2012-07-05 53 views
2

我添加多個批註程序是這樣的:MKAnnotation顯示所有引腳標題不點擊

- (void)addAnnotations{ 
    NSInteger i; 
    CLLocationCoordinate2D location; 

    for (i = 0 ; i < [storeLatitude count] ; i ++){ 
     location.latitude = [[storeLatitude objectAtIndex:i] floatValue]; 
     location.longitude = [[storeLongitude objectAtIndex:i] floatValue]; 

     MapViewAnnotation *newAnnotation = [[MapViewAnnotation alloc] initWithTitle:[listOfStores objectAtIndex:i] andCoordinate:location]; 
     [self.mapView addAnnotation:newAnnotation]; 
     [newAnnotation release];  
    } 
} 

是否有可能顯示標題爲所有引腳沒有點擊它們?

回答

-3

沒有它不可能。您必須點擊註釋以顯示標題。

0

U可以使用自定義註釋視圖來顯示Title和subTitle,而無需單擊pin。 有一個自定義註釋視圖的教程。

This app contains the custom annotation view

+0

鏈接中的答案是死 - *對不起,該頁面無法找到* – Pang 2017-09-25 05:55:27

3

試試這個。它會自動顯示標題。

-(void)mapView:(MKMapView *)mapView1 didAddAnnotationViews:(NSArray *)views 
{ 
    [self.mapView selectAnnotation:yourannotationpin animated:NO]; 
} 
7

聲明數組來存儲所有的註釋和使用的MKMapView的setSelectedAnnotations:(NSArray的*)方法

- (void)addAnnotations { 

    NSMutableArray *annotationArray = [[NSMutableArray alloc]init]; 
    NSInteger i; 
    CLLocationCoordinate2D location; 

    for (i = 0 ; i < [storeLatitude count] ; i ++) { 
     location.latitude = [[storeLatitude objectAtIndex:i] floatValue]; 
     location.longitude = [[storeLongitude objectAtIndex:i] floatValue]; 

     MapViewAnnotation *newAnnotation = [[MapViewAnnotation alloc] initWithTitle: [listOfStores objectAtIndex:i] andCoordinate:location]; 
     [annotationArray addObject:newAnnotation]; 
     [self.mapView addAnnotation:newAnnotation];  
    } 
    [mapView setSelectedAnnotations:annotationArray]; 
}