Я написал простое приложение iOS, которое извлекает информацию о местоположении, а затем использует это местоположение для запроса Yahoo Weather.Местоположение ядра не может получить данные в viewDidLoad
Проблема в том, что даже когда я называю базовое расположение в viewDidLoad, это не даст мне результат немедленно.
Так почему я не могу получить информацию о местоположении?
Как получить информацию о местоположении в viewDidLoad?
псевдокод в настоящее время что-то вроде:
- (void)viewDidLoad
{
[super viewDidLoad];
self.locManager = [[CLLocationManager alloc] init];
self.locManager.delegate = self;
self.locManager.desiredAccuracy = kCLLocationAccuracyBest;
self.locManager.distanceFilter = 100;
[self.locManager startUpdatingLocation];
//won't get the current location right now, so the output will be null
NSLog(@"Current Location Longitude: %@", self.longitudeString);
NSLog(@"Current Location Latitude: %@", self.latitudeString);
}
-(void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations
{
CLLocation *newLocation = [locations lastObject];
self.longitudeString = [NSString stringWithFormat:@"%.8f", currentLocation.coordinate.longitude];
self.latitudeString = [NSString stringWithFormat:@"%.8f", currentLocation.coordinate.latitude];
}
Время ожидания не определено. Это может занять более 2-3 секунд. –
yip, в зависимости от того, насколько хорош gps –
, также просто начать его не поможет - вам нужно позвонить startUpdate –