2012-06-05 30 views
0

嘗試將引腳位置的地址設置爲註釋字幕,如果它== nil。但沒有任何反應。爲什麼我無法將引腳地址設置爲註釋的副標題?

if (myAnnotation.subtitle == nil) 
        [self.geoCoder reverseGeocodeLocation: locationManager.location completionHandler: 
        ^(NSArray *placemarks, NSError *error) { 

         CLPlacemark *placemark = [placemarks objectAtIndex:0]; 
         NSString *locatedAt = [[placemark.addressDictionary valueForKey:@"FormattedAddressLines"] componentsJoinedByString:@", "]; 
         myAnnotation.subtitle = locatedAt; 

        }]; 
       else { 
        myAnnotation.subtitle = [[ann objectAtIndex:i] objectForKey:@"Address"]; 
       } 
+1

您是否試圖在地圖上反轉地理編碼很多引腳?如果是這樣,我不認爲它是爲那麼多操作設計的。蘋果在文檔中說道:「最多發送一個用戶操作的地理編碼請求。」 – jonusx

+0

是的,很多針腳。好的,謝謝你! –

回答

0

正在發生的事情與你的代碼的事情是,地理編碼器是一個異步操作。在完成地理編碼之前放置您的徽標。根據代碼的設置方式,您可能會在地理編碼完成之前丟失對引腳的引用。嘗試在創建註釋之前對地標進行地理編碼。

相關問題