여기 내지도를 내 앱에서 사용하고있어 잘 작동합니다. 하나의보기 컨트롤러에서 여기에 map과 그 메소드가 들어있는 다른 viewcontroller로 대상 좌표를 전달합니다. 나는 두 번째보기 컨트롤러에서 메서드를 현재 위치를 얻으려고했는데, 현재 위치는 항상 0,0.please 조언을 반환합니다. 첫 번째 viewcontroller에서 값을 전달하는 방법은 현재 위치를 얻는 방법입니다.현재 위치가 여기에 없습니다.
viewcontroller1 :
- (IBAction)btn_navigate:(id)sender
{
NSLog(@"%@",_POiarray);
_VC=[[NaviMeVC alloc]init];
[_VC GetPoi:_POiarray];
[self.navigationController pushViewController:_VC animated:YES];
}
mapviewcontroller :
-(void)GetPoi:(NSMutableArray *)anArray
{
//get current location
NMAGeoPosition * position=[[NMAGeoPosition alloc]init];
position = [[NMAPositioningManager sharedPositioningManager] currentPosition];
_StartCoordinate=[[NMAGeoCoordinates alloc]initWithLatitude:position.coordinates.latitude longitude:position.coordinates.longitude];
//not working returns nil
[[NMAMapLoader sharedMapLoader] setDelegate:self];
_SelectedPOi=[[NSMutableArray alloc]init];
_SelectedPOi=anArray;
NSString *lat=[anArray valueForKey:@"latitude"];
CLLocationDegrees latitu=[lat doubleValue];
NSString *longi=[anArray valueForKey:@"longitude"];
CLLocationDegrees longit=[longi doubleValue];
_DestinationCoordinate=[[NMAGeoCoordinates alloc]initWithLatitude:latitu longitude:longit];
NSLog(@"%f %f",_DestinationCoordinate.latitude,_DestinationCoordinate.longitude);
NSNumber *lati = [NSNumber numberWithDouble:latitu];
NSNumber *longitu = [NSNumber numberWithDouble:longit];
NSDictionary *[email protected]{@"lat":lati,@"long":longitu};
NMARoutingMode* routingMode = [[NMARoutingMode alloc] initWithRoutingType:NMARoutingTypeShortest
transportMode:NMATransportModeCar
routingOptions:0];
[self CalculateRoute:routingMode];
}
하여 사용 MKMapView 또는 Google지도의 경우? –