Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在iPhone中选择复选标记时,如何从MapView中删除选定的注释接点?_Iphone_Objective C_Cocoa Touch_Ios4 - Fatal编程技术网

在iPhone中选择复选标记时,如何从MapView中删除选定的注释接点?

在iPhone中选择复选标记时,如何从MapView中删除选定的注释接点?,iphone,objective-c,cocoa-touch,ios4,Iphone,Objective C,Cocoa Touch,Ios4,我在地图视图上有3个复选框,单击该复选框的任何复选标记时,该复选框的管脚都会被打印出来,但是当我取消选中该复选框时,管脚应该被删除,但它们不会被删除。那么,在取消选中该框时,如何删除PIN 然后像这样删除:[\u gogoZingMap removeAnnotations:NearbyPeopleArr]但它不起作用 帮助我从地图中删除未选中的接点。 提前感谢有几种方法可以实现这一点,这取决于您实现映射的方式 我假设NearbyPeopleArr是一个符合MKAnnotation协议的注释 从您

我在地图视图上有3个复选框,单击该复选框的任何复选标记时,该复选框的管脚都会被打印出来,但是当我取消选中该复选框时,管脚应该被删除,但它们不会被删除。那么,在取消选中该框时,如何删除PIN

然后像这样删除:
[\u gogoZingMap removeAnnotations:NearbyPeopleArr]但它不起作用

帮助我从地图中删除未选中的接点。
提前感谢

有几种方法可以实现这一点,这取决于您实现映射的方式

我假设
NearbyPeopleArr
是一个符合MKAnnotation协议的注释

从您描述的内容来看,听起来好像您有一个注释列表,并且您只想显示用户选择的注释。因此,您有两种选择:

  • 每次选择或取消选择批注时,重新加载批注数组。这可能会比较慢,但其效果是允许所有管脚再次设置动画,这可能有益,也可能有害

  • 每次选择或取消选择某个注释时,在数组索引中删除或添加该注释。这会更快,并且具有仅为正在选择或取消选择的注释设置动画的效果

  • 对于选项1,您将使用
    addAnnotations:
    removeanotations:
    方法,并根据用户的选择为它们提供新格式化的数组

    对于选项2,您将使用
    addAnnotation:
    removeanotation:
    方法,并根据用户的选择为它们提供要操作的特定注释

    这就是我在没有看到任何代码的情况下所能提供的全部内容。希望有帮助