Iphone 向UIMapView添加可单击的注释

Iphone 向UIMapView添加可单击的注释,iphone,mkmapview,Iphone,Mkmapview,我想在地图视图中添加一个注释,上面有“披露”按钮,但我想不出来 我创建了一个符合MKAnnotation协议的PlaceMark类,然后创建MapView并添加PlaceMark: // Add annotation information PlaceMark *venuePlacemark = [[PlaceMark alloc] initWithCoordinate:location]; venuePlacemark.locationTitle = [locationDictionary v

我想在地图视图中添加一个注释,上面有“披露”按钮,但我想不出来

我创建了一个符合MKAnnotation协议的PlaceMark类,然后创建MapView并添加PlaceMark:

// Add annotation information
PlaceMark *venuePlacemark = [[PlaceMark alloc] initWithCoordinate:location];
venuePlacemark.locationTitle = [locationDictionary valueForKey:VENUE_NAME_KEY];
venuePlacemark.locationSubtitle = @"Touch to show in Google Maps";

// Create the accessory button on the placemark
[venueMap addAnnotation:venuePlacemark];
[venueMap setRegion:region animated:TRUE];
[venueMap regionThatFits:region];
这一切都起作用,触摸时会显示一个pin,以显示正确的呼出文本。我不知道如何在呼叫中添加披露按钮。抱歉,如果这是基本的,任何帮助将不胜感激


戴夫

我想我已经明白了。。。实现了以下委托方法:

- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation
{
    MKPinAnnotationView *dropPin=[[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"venues"];

    UIButton *disclosureButton = [UIButton buttonWithType:UIButtonTypeDetailDisclosure];
    [disclosureButton addTarget:self action:@selector(mapCallOutPressed:) forControlEvents:UIControlEventTouchUpInside];

    dropPin.rightCalloutAccessoryView = disclosureButton;
    dropPin.animatesDrop = YES;
    dropPin.canShowCallout = YES;

    return dropPin;
}
-(MKAnnotationView*)地图视图:(MKMapView*)地图视图注释:(id)注释
{
MKPinAnnotationView*dropPin=[[MKPinAnnotationView alloc]initWithAnnotation:annotation重用标识符:@“场馆”];
UIButton*DispositionButton=[UIButton Button类型:UIButtonTypedTailDisposition];
[披露按钮添加目标:自我操作:@选择器(MapCallout按下:)用于控制事件:UIControlEventTouchUpInside];
dropPin.rightCalloutAccessoryView=披露按钮;
dropPin.animatesDrop=YES;
dropPin.canShowCallout=是;
回程吊针;
}

这是可行的,但您可能应该使用预定义的委托方法-(void)mapView:(MKMapView*)mapView annotationView:(MKAnnotationView*)view calloutAccessoryControlTapped:(UIControl*)Control这是个好问题。这方面的文档有点糟糕。在编写这些文档时,苹果似乎真的假设了很多关于SDK的老手知识。