-1

指定された場所と現在の場所の間の距離を見つける必要があるアプリを構築しています。私はCLLocationManager同じものを使用していますが、シミュレーターでカスタムの場所を指定しているにもかかわらず、取得された座標は 0,0 です。コードは次のとおりです。 .m ファイル

@property (nonatomic, strong) CLLocationManager *locationManager2;
...
@synthesize locationManager2;
- (CLLocationManager *)locationManager2 {

if (locationManager2 != nil) {
    return locationManager2;
}

locationManager2 = [[CLLocationManager alloc] init];
[locationManager2 setDesiredAccuracy:kCLLocationAccuracyNearestTenMeters];
[locationManager2 setDelegate:self];

return locationManager2;
}
 ...
 ...
 ...
  CLLocation *locationHome = [locationManager2 location];

NSLog(@"%f",locationHome.coordinate.latitude);

緯度はゼロとして記録されます。コードに何か問題がありますか?

4

1 に答える 1

0

このコードを入れて、コンソールで何を得ているか教えてください。

このコードは iOS 6 で構築されています。

CLLocationManager *locationManager = [[CLLocationManager alloc] init];
if ([CLLocationManager locationServicesEnabled])
{
    locationManager.delegate = self;
    locationManager.desiredAccuracy = kCLLocationAccuracyBest;
    locationManager.distanceFilter = kCLDistanceFilterNone;
    [locationManager startUpdatingLocation];
}

location = [locationManager location];
CLLocationCoordinate2D coordinate = [location coordinate];;
MKCoordinateRegion region;
region.center=coordinate;
MKCoordinateSpan span;
span.latitudeDelta=10.015;
span.longitudeDelta=10.015;
region.span=span;
[mapView setRegion:region];

NSString *str=[[NSString alloc] initWithFormat:@" latitude:%f longitude:%f",coordinate.latitude,coordinate.longitude];
NSLog(@"%@",str);
于 2013-06-22T10:50:37.707 に答える