calloutAccestoryControlTapped方法が使用されることはありません

StackOverflow https://stackoverflow.com/questions/2522771

  •  22-09-2019
  •  | 
  •  

質問

(Uicontrolの*)制御方式:calloutAccesoryControlTappedを表示(MKAnnotationView *):(MKMapView *)のMapView annotationView:(空)のMapView -

私が使用して問題を抱えています。私はそれをテストするために多くの方法を試みたが、それだけでは表示されません。誰でも間違いを見つけることができます。

-(MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)anno{
    MKPinAnnotationView *retval=nil;
    if(retval ==nil){
        retval=[[[MKPinAnnotationView alloc]initWithAnnotation:anno reuseIdentifier:@"Annotations"]autorelease];
        UIButton *disclosure=[UIButton buttonWithType:UIButtonTypeDetailDisclosure];
        retval.rightCalloutAccessoryView=disclosure;
        [retval setPinColor:MKPinAnnotationColorGreen];
        retval.animatesDrop=YES;
        retval.canShowCallout=YES;
    }
    return retval;
}
-(void)mapView:(MKMapView *)mapView annotationView:(MKAnnotationView *)view calloutAccesoryControlTapped:(UIControl *)control{
    NSLog(@"Tap");
    PhotoDetail *detail=[[PhotoDetail alloc]initWithNibName:@"PhotoDetail" bundle:nil];
    UINavigationController *nav=[[UINavigationController alloc]initWithRootViewController:detail];
    [self presentModalViewController:nav animated:YES];
}
役に立ちましたか?

解決

あなたが実装さを確認してください。

MKMapViewDelegate protocol
親の中に

のViewControllerます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top