1

私は iOS 開発に飛び込んでおり、そのためにブログ投稿を表示するシンプルなアプリを開発しています。

DetailViewController に次の設定があります。

私のDetailViewController

実装したいのは、ユーザーが画面を左右にスワイプすると、webView のコンテンツが変更されることです。

ただし、スワイプジェスチャーはUIWebViewに飲み込まれているように見えるので、透明なUIView(「投稿詳細タッチインターセプタービュー」)を上に作成し、スワイプジェスチャーを処理してDetailViewControllerに転送できると考えました。

これは機能し、DetailViewController のスワイプ ハンドラーが呼び出されますが、webView でスクロールしたり、ボタンを押したりすることはできなくなりました。透明なUIViewは、UIWebViewに到達する前にすべてのイベントを消費するためだと思います。

スワイプ ジェスチャが DetailViewController に転送されている間に、透明なビューの下にあるすべてのコントロールをイベントに正常に応答させる最善の方法は何ですか?

4

1 に答える 1

1

スワイプ認識機能を UIWebView に追加して、このメソッドをジェスチャ認識機能デリゲートに実装することもできます。

    - (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer

または、この SO 投稿を参照して、両方のビューでイベントを処理することもできます。

複数のビューで処理されるタッチ イベント

最初に、UIWebView で独自のジェスチャ レコグナイザーを使用することをお勧めします。私は以前にこれを成功させました。

于 2012-10-04T22:49:12.950 に答える