Я пытаюсь получить точное местоположение в соответствии с моими координатами. Я внедрил CLLocationManager
в свой viewController
под названием myLocation
. Моя проблема в том, что я не получаю мои координаты в первый раз, но когда я снова подхожу, я получил координаты. Я не могу понять эту проблему, почему это не появляется в первый раз. Я также пытался дать NSTimer
до stoplocation
, но все равно не смог получить результат в первый раз, каждый раз, когда я получаю (нулевое) значение, а затем получаю координаты.Получение координат CLLocationManager IOS
Мой код:
#import <UIKit/UIKit.h>
#import <Corelocation/CoreLocation.h>
@interface myLocation : UITableViewController<CLLocationManagerDelegate>
@property (strong, nonatomic) CLLocationManager *locationManager;
@end
@interface myLocation() {
CLLocationManager* _locationManager;
NSString * _lat;
NSString * _lng;
}
@end
@implementation myLocation
- (void)viewDidLoad
{
[super viewDidLoad];
_locationManager = [[CLLocationManager alloc] init];
_locationManager.distanceFilter = kCLDistanceFilterNone;
_locationManager.delegate = self;
_locationManager.desiredAccuracy = kCLLocationAccuracyHundredMeters;
if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 8.0)
[_locationManager requestWhenInUseAuthorization];
[_locationManager startUpdatingLocation];
}
- (void)locationManager:(CLLocationManager *)manager
didUpdateLocations:(NSArray *)locations {
CLLocation *location = [locations lastObject];
[_locationManager stopUpdatingLocation];
_lat =[NSString stringWithFormat:@"%f",location.coordinate.latitude];
_lng =[NSString stringWithFormat:@"%f",location.coordinate.longitude];
}
- (void)viewWillAppear:(BOOL) animated
{
NSLOG(@"%@",_lat);
NSLOG(@"%@",_lng);
}
О, вы имеете в виду, почему ваши координаты не печатаются во взглядеWillAppear? –
Да, только в первый раз. @LyndseyScott – developer