如何在我的Pin注释上显示标题并使它可单击以执行某些操作? [英] How to show the title on my Pin Annotation and make it clickable to perform some action?

查看:111
本文介绍了如何在我的Pin注释上显示标题并使它可单击以执行某些操作?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在我的MapView中,我将图钉放到了某些位置,现在我想在这些图钉注释上显示一些标题,并使它可单击,以便在单击时可以推入另一个视图. 请帮忙!!!!

In my MapView i have pin dropped on certain locations and now i want to display some title on these pin annotation and make it clickable so that on click i can push another view. Please help !!!!

推荐答案

这是代码段:

使用此方法的自定义注释视图

- (MKAnnotationView *)mapView:(MKMapView *)map viewForAnnotation:(id <MKAnnotation>)annotation
{
    if (annotation == mapView.userLocation) return nil;

    MKPinAnnotationView *pin = (MKPinAnnotationView *) [mapView dequeueReusableAnnotationViewWithIdentifier: @"asdf"];
    if (pin == nil)
    {
        pin = [[[MKPinAnnotationView alloc] initWithAnnotation: annotation reuseIdentifier: @"asdf"] autorelease];
    }
    else
    {
        pin.annotation = annotation;
    }
    pin.rightCalloutAccessoryView = [UIButton buttonWithType:UIButtonTypeDetailDisclosure];
    pin.pinColor = MKPinAnnotationColorRed;
    pin.animatesDrop = YES;
    [pin setEnabled:YES];
    [pin setCanShowCallout:YES];
    return pin;

}

代理方法,当您点击按钮时会被调用

- (void)mapView:(MKMapView *)mapView annotationView:(MKAnnotationView *)view calloutAccessoryControlTapped:(UIControl *)control
{

    //DetailPg=[[BookMarksDetail alloc]initWithNibName:@"BookMarksDetail" bundle:nil];
    //DetailPg.selectRest =[view.annotation title]; //In addition, to get the Title of the AnnotationView.
    //DetailPg.m=1;
    //[self.navigationController pushViewController:DetailPg animated:YES];
    //[DetailPg release];

}

这篇关于如何在我的Pin注释上显示标题并使它可单击以执行某些操作?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆