添加纬度和经度值时出现问题

时间:2011-04-07 17:52:22

标签: iphone ios coordinates cllocationmanager mkreversegeocoder

当我更改其他位置的纬度和经度值时,我的应用会自动关闭吗?

if (1)
{
    CLLocationCoordinate2D cordi;
    cordi.latitude  =  45.574779;
    cordi.longitude = -122.685366;

    MKReverseGeocoder *coder = [[MKReverseGeocoder alloc] initWithCoordinate:cordi];
    coder.delegate = self;
    [coder start];
}
else
{
    [self performSelectorInBackground:@selector(showWeather:) withObject:@"97217"];
}

1 个答案:

答案 0 :(得分:1)

正如Twelve47所说,你应该完全实现delegate,因为这两种方法都不是可选的。

听起来你只实现了成功方法:

– reverseGeocoder:didFindPlacemark:

因此,当您将位置更改为某个地方而不能进行地理编码时,会调用失败方法,从而导致错误。

添加此代码:

- (void)reverseGeocoder:(MKReverseGeocoder *)geocoder didFailWithError:(NSError *)error
   NSLog(@"Geocoder failed with error: %@",error);
}