因此,我使用地圖爲聯繫人中具有地址的每個人添加點,並且我有點難以確定如何爲其設置未知數量的聯繫人。現在按照我設置的方式,它只是爲列表中的最後一個聯繫人添加一個PIN。這裏是一些代碼:address是一個從addressProperty設置的字符串。將未知數量的註釋添加到MKMapView中
if(addressProperty != nil)
{
[location geocodeAddressString:address completionHandler:^(NSArray *placemarks, NSError *error) {
NSMutableArray *array = [[NSMutableArray alloc]init];
for(int a = 0; a < [placemarks count]; a++)
{
self.placeMarkData = [placemarks objectAtIndex:a];
[point setCoordinate: self.placeMarkData.location.coordinate];
[array addObject:point];
pin.animatesDrop = YES;
point.title = address;
[map addAnnotations:array];
}
}];
}
所以,當我運行應用程序,我可以看見針在每個位置被設置並移動到下一個位置,直到它在列表中的最後位置結束。我怎樣才能爲每個點添加一個點?我相信這是一個簡單的解決方案,但它現在正在逃避我。
是的,它是在一個循環內獲取聯繫人和位置是一個CLGeocoder。所以我需要一個新的地理編碼器爲每個不同的地址字符串?是的,我明白你對這個陣列的意思,我只是想念那個。我還需要爲每個地址添加一個新的點對象嗎? –
每次將某些東西放入數組時,都需要創建一個新點,以便每次都不修改相同的點。是的,每個地址字符串都需要一個新的CLGeocoder,但只有在這樣的緊密循環中進行時纔是如此。如果您只發送一個地址,並在發送下一個響應之前收到響應,那麼您可以只使用一個CLGeocoder來處理所有事情。 – Craig
好吧,我想我可以與之合作,謝謝你的幫助。 –