0
有沒有辦法等待geocoder調用didFailWithError或didFindPlaceMark?等待MKReverseGeocoder提供地址
我的問題是,我不得不調用一個方法,接收座標並返回地址的地址。但是當我調用[myGeocoder start]代碼時,我會得到一個空的地標。
我的代碼是:
- (MKPlasemark*) getAddress:(CLLocationCoordinate2D) coordinate
{
[self startGeocoder:coordinate];
return self.foundPlasemark;
}
- (void)reverseGeocoder:(MKReverseGeocoder*)geocoder didFindPlacemark:(MKPlaseMark*)plasemark
{
self.foundPlasemark=plasemark;
}
- (void)reverseGeocoder:(MKReverseGeocoder*)geocoder didFailWithError:(NSError*)error
{
self.foundPlasemark=nil;
}
我tryed執行睡眠()調用whyle下面的方法之一,但沒有奏效。
不是真的。我想我完全按照你的建議和didReceivePlacemark被調用的方法。我可以根據需要實現它,但問題是我想等待某種情況發生此事件,而不是繼續執行代碼。 – Misha 2011-03-05 19:05:34
再一次,你是錯誤的方式,你不會執行代碼,直到調用delegate方法,所以無論你在getplacemark方法返回時做什麼,在協議方法中做... – Daniel 2011-03-05 22:25:00
@Daniel,我試圖做同樣的事情,我didRecievePlacemark方法也被調用,但是當我把一個NSLog語句來看看什麼是在地標對象中,我所得到的是空字符串。 – Yogesh 2011-03-07 02:44:15