小さな領域を示す MapView が埋め込まれたカスタム テーブルセルがあります。ユーザーがセルを選択すると、より大きなマップビューと、現在地からの距離、マップタイプのオプションなどの詳細情報を含む新しいビューをプッシュしたいと思います.
マップビューの周りに小さな余白を残すと、ユーザーはその余白をクリックしてセルを選択できますが、マップビュー内をクリックした場合にセルを選択するにはどうすればよいですか?
よろしく、 -
ベガー
小さな領域を示す MapView が埋め込まれたカスタム テーブルセルがあります。ユーザーがセルを選択すると、より大きなマップビューと、現在地からの距離、マップタイプのオプションなどの詳細情報を含む新しいビューをプッシュしたいと思います.
マップビューの周りに小さな余白を残すと、ユーザーはその余白をクリックしてセルを選択できますが、マップビュー内をクリックした場合にセルを選択するにはどうすればよいですか?
よろしく、 -
ベガー
UIViewから継承した hitTest メソッドをオーバーライドする必要があると思います
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
このメソッドは、各サブビューに pointInside:withEvent: メッセージを送信してビュー階層を走査し、どのサブビューがタッチ イベントを受け取るかを決定します。pointInside:withEvent: が YES を返す場合、サブビューの階層がトラバースされます。それ以外の場合、ビュー階層のブランチは無視されます。このメソッドを呼び出す必要はほとんどありませんが、サブビューからタッチ イベントを非表示にするためにオーバーライドする場合があります。
MapView のuserIteractionEnabled
プロパティを NO に設定してみてください