2012-05-24 163 views
1

我想在MKMapView上創建自定義標註和標註。我必須創建尺寸更大的註釋,並且必須顯示三到四行文本(標籤)。那麼如何創建一個自定義註釋和標註泡泡。如何在iphone中創建自定義註釋和標註

在此先感謝。

阿希什

+0

你能後顯示你有什麼到目前爲止已經試過一些代碼? – 2012-05-25 08:48:11

+0

我已經使用了類似於這篇文章中使用的技術:http://stackoverflow.com/questions/2342070/how-to-add-more-details-in-mkannotation-in-ios – brendan

回答

1

你應該重新實現只是3種方法:

自定義您的註釋使用:

- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id)annotation 

這裏只是添加子視圖,你需要

- (void)mapView:(MKMapView *)mapView didSelectAnnotationView:(MKAnnotationView *)view 

這裏只是刪除您的自定義來自superview的callOutView

- (void)mapView:(MKMapView *)mapView didDeselectAnnotationView:(MKAnnotationView *)view 

檢查這個blog的細節

-2

您可以使用此。

- (MKAnnotationView *)mapView:(MKMapView *)newMapView viewForAnnotation:(id)newAnnotation { 
    MKAnnotationView *a = [ [ MKAnnotationView alloc ] initWithAnnotation:newAnnotation reuseIdentifier:@"PinView"]; 

    if (a == nil) 
     a = [ [ MKAnnotationView alloc ] initWithAnnotation:newAnnotation reuseIdentifier: @"PinView" ]; 

    a.image = [ UIImage imageNamed:@"Image.png" ]; 
    a.canShowCallout = YES; 
    a.rightCalloutAccessoryView = [ UIButton buttonWithType:UIButtonTypeDetailDisclosure ]; 
    UIImageView *imgView = [ [ UIImageView alloc ] initWithImage:[ UIImage imageNamed:@"Image.png" ] ]; 
    a.leftCalloutAccessoryView = imgView; 

    return a; 
} 
相關問題