我有一个有很多注释的MKMapView
。当我点击注释时,注释的联系方式(ABPersonViewController
)被推送。在本课程中,我可以选择删除联系人。由于联系人已从地址簿中删除,同时我也需要从地图视图中删除注释。
点击删除按钮时,联系人将从通讯簿中删除,ABPersonViewController
类将从导航堆栈中弹出。现在,用户将看到地图视图。但它应该没有已删除的注释(联系人)。我该怎么做。
使用 annotation
属性从地图视图中获取注释。然后循环访问注释列表以获取特定注释,然后使用
- (void)removeAnnotation:(id < MKAnnotation >)annotation
删除批注的方法。我希望它能解决你的问题。
添加可变数组中的所有注释及其相应的地址,如下所示:
NSMutablearray *array;
[数组添加对象:[NSDictionary dictionarywithobjectandkeys:@"your object and keys"];
现在,当用户删除地址时,其后续注释也将被删除。这应该可以做到。
要删除所有注释,请使用以下代码;
[mapView removeAnnotations:mapView.annotations]