Ios 高德地图 地图上添加多个大头针 怎么在复用队列中知道我单击的是哪一个大头针
//创建大头针对象MAPointAnnotation*pointAnnotation=[[MAPointAnnotationalloc]init];//插入大头针的位置pointAnnotation.coordinate=CLLocationCoordinate2DMake(39.989631,116.481018);//大头针的标题pointAnnotation.title=@"方恒国际";//大头针的子标题pointAnnotation.subtitle=@"阜通东大街6号";[_mapViewaddAnnotation:pointAnnotation];//实现下列方法后能让地图上得大头针弹出气泡-(MAAnnotationView*)mapView:(MAMapView*)mapViewviewForAnnotation:(id<MAAnnotation>)annotation{if([annotationisKindOfClass:[MAPointAnnotationclass]]){staticNSString*pointReuseIndetifier=@"pointReuseIndetifier";MAPinAnnotationView*annotationView=(MAPinAnnotationView*)[mapViewdequeueReusableAnnotationViewWithIdentifier:pointReuseIndetifier];if(annotationView==nil){annotationView=[[MAPinAnnotationViewalloc]initWithAnnotation:annotationreuseIdentifier:pointReuseIndetifier];}annotationView.canShowCallout=YES;//设置气泡可以弹出,默认为NOannotationView.animatesDrop=YES;//设置标注动画显示,默认为NOannotationView.draggable=YES;//设置标注可以拖动,默认为NOannotationView.pinColor=MAPinAnnotationColorPurple;returnannotationView;}returnnil;}用坐标信息判断你没说想要的具体的效果那我就给你说一种吧假设你地图上面有n个大头针实际上也就是n个pointAnnotation你可以通过_mapView.annotations直接获取到这是个数组在点击大头针的方法里面-(void)mapView:(BMKMapView*)mapViewdidSelectAnnotationView:(BMKAnnotationView*)view{NSArray*array=[NSArrayarrayWithArray:_mapView.annotations];for(inti=0;i<array.count;i++){if(view.annotation.coordinate.latitude==((BMKPointAnnotation*)array[i]).coordinate.latitude){//获取到当前的大头针你可以执行一些操作}else{//对其余的大头针进行操作我是删除//[_mapViewremoveAnnotation:array[i]];}}}
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。