私のアプリでは、マップ ビューを実装し、注釈を追加しました。
しかし今、ポップオーバーで注釈をクリックすると詳細ビューを表示したいと思います。今までは、calloutAccessoryControl をクリックしてこれを行いました。
しかし、ポップオーバーは注釈のすぐ横から開始する必要があり、calloutAccessoryControl または黒いデフォルト ラベルを表示したくありません。
私のコードは次のとおりです。
- (MKAnnotationView *)mapView:(MKMapView *)myMap viewForAnnotation:(id <MKAnnotation>)annotation
{
AnnotationImageView *myLocationImage = (AnnotationImageView *)[map dequeueReusableAnnotationViewWithIdentifier:defaultID];
if (myLocationImage == nil )
{
myLocationImage = [[[AnnotationImageView alloc] initWithAnnotation:annotation reuseIdentifier:defaultID] autorelease];
myLocationImage.rightCalloutAccessoryView = [UIButton buttonWithType:UIButtonTypeDetailDisclosure];
}
myLocationImage.locationID = [currentAnnotation locationID];
myLocation = myLocationImage;
[myLocation setEnabled:YES];
[myLocation setCanShowCallout:YES];
return myLocation;
}
- (void)mapView:(MKMapView *)myMap annotationView:(MKAnnotationView *)view calloutAccessoryControlTapped:(UIControl *)control
{
detailsView *popUp=[[detailsView alloc] initWithNibName:@"detailsView_ipad" bundle:nil];
popView = [[UIPopoverController alloc]initWithContentViewController:popUp];
popView.delegate =self;
[popView setPopoverContentSize:CGSizeMake(600, 500)];
AnnotationImageView *myLocationImage = (AnnotationImageView *)view;
popUp.locationID = myLocationImage.locationID;
[popView presentPopoverFromRect:control.frame inView:self.view permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES];
}
アノテーションがクリックされたときにメソッド呼び出しはありますか??
これどうやってするの??
**こんな風に見せたい**