【问题标题】:need help with some design issues on MKMapViewAnnotation在 MKMapViewAnnotation 的一些设计问题上需要帮助
【发布时间】:2011-09-04 00:19:56
【问题描述】:

所以我有一个地图视图,如果我点击附件视图,它将向导航控制器推送一个新视图。问题是我还想在点击它时设置该视图控制器的局部变量(在我的视图控制器中,我有一个名为场所的实例,我想在其中设置)我正在实现的委托是:

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

我的想法是将 MKAnnotationView 子类化,然后在那里存储一个场所,但我认为这违背了目的,因为 MKAnnotationView 应该只是一个视图而不是数据存储。那么最好的方法是什么?

换句话说,问题在于,每个引脚都有一个场所,我需要通过上面的委托将其传递给视图控制器实例。

【问题讨论】:

    标签: iphone objective-c ipad


    【解决方案1】:

    如果你的注解对象(一个符合MKAnnotation的类)已经有一个场地属性,你可以像这样在calloutAccessoryControlTapped中使用view.annotation访问它:

    MyAnnotationClass *myAnnot = (MyAnnotationClass *)view.annotation;
    
    DetailViewController *dvc = [[DetailViewController alloc] init...
    dvc.venue = myAnnot.venue;
    [self.navigationController pushViewController:dvc animated:YES];
    [dvc release];
    

    【讨论】:

      猜你喜欢
      • 2018-10-27
      • 1970-01-01
      • 1970-01-01
      • 2011-08-24
      • 1970-01-01
      • 2015-12-21
      • 1970-01-01
      • 2015-09-10
      • 2011-02-02
      相关资源
      最近更新 更多