2

MKMapView吹き出しが有効になっているピンがいくつかあります。そして、タップrightCalloutAccessoryViewするUIButtonTypeDetailDisclosureとdetailViewが開きます。

ここで、ユーザーが吹き出しビューの任意の場所をタップして、detailView を開くことができるようにします。

そのタップを検出するにはどうすればよいですか?

(UICalloutView はプライベート API であることに注意してください)。

4

1 に答える 1

0

左または右のコールアウト アクセサリ ビュー オブジェクトが のサブクラスでUIControlある場合 (UIButton があるように聞こえるので、これに該当するはずです)、アクセサリ ビューがタッチされると、マップ ビューはそのデリゲートに自動的に通知します。ボタンのターゲット/アクションを手動で設定する必要はありません。

ビュー コントローラまたは他の適切なオブジェクトがdelegateマップ ビューの として設定されていることを確認してください。メソッドを実装しmapView:annotationView:calloutAccessoryControlTapped:ます。このメソッドは、注釈ビューと、タップされた特定のアクセサリ コントロールの両方を提供します。注釈ビュー オブジェクトのプロパティをチェックしてannotation、詳細ビューを表示するために必要なデータを取得できます。

于 2014-01-27T00:13:18.950 に答える