原因是didSelectAnnotationView方法選中了該按鈕惊暴,選中后需要通過deselectAnnotation取消當前的選中狀態(tài)
-(void)mapView:(MKMapView*)mapView didSelectAnnotationView:(MKAnnotationView*)view
{
? ? if ([view isKindOfClass:[RYHomeMapOwnerCustomAnnotionView class]]) {
? ? ? ? RYHomeMapOwnerCustomAnnotionView *AnnotionView = (RYHomeMapOwnerCustomAnnotionView *)view;
? ? ? ? RYLog(@"%@",AnnotionView.OwnerAnnotation.baggage_id);
? ? ? ? if ([RYLoginSuccessModel shareUserModel].isLogin) {
? ? ? ? ? ? RYHomeMapOwnerAnnotation *model = AnnotionView.OwnerAnnotation;
? ? ? ? ? ? RYSureGoodsDemandController *SureGoods = [[RYSureGoodsDemandController alloc]init];
? ? ? ? ? ? SureGoods._ID= model.baggage_id;
? ? ? ? ? ? SureGoods.Type = GoodDemandType_MineLookOtherApplyCarray;
? ? ? ? ? ? [self.navigationController pushViewController:SureGoods animated:YES];
? ? ? ? ? ? [mapViewdeselectAnnotation:view.annotation animated:YES];
? ? ? ? }else
?? ? ? ? {
? ? ? ? ? ? ClassclassName =NSClassFromString(@"RYLoginViewController");
? ? ? ? ? ? UIViewController*controller = [[classNamealloc]init];
? ? ? ? ? ? [self.navigationController pushViewController:controller animated:YES];
?? ? ? ? ? ? [mapView deselectAnnotation:view.annotation animated:YES];
?? ? ? ? }
? ? }
}