1

私はにとを持っていUITapGestureRecognizerます。をスクロールした後にのみタップジェスチャを認識します。どうすればこれを防ぐことができますか?基本的に、Webビューをスクロールしていないときに、タップジェスチャが検出されるようにします。私は周りを見回しました、そして私が見つけた最も近いものはこれです:UIViewControllerUIScrollViewUIWebViewUIWebView

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer*)otherGestureRecognizer {
      return YES;
}

しかし、これを使用してスクロール中のタップを無効にするにはどうすればよいかわかりません。何か案が?

私がやりたいもう1つのことは、UIWebViewのリンクがクリックされたときにUITapGestureRecognizerを無効にすることです(shouldStartLoadWebRequestが呼び出されます)。shouldStartLoadWebRequestが呼び出される前に、タップジェスチャレコグナイザーが呼び出されることを確認しました。基本的に、UIWebViewのリンクをクリックしても、UITapGestureRecongnizerによって呼び出されるアクションはトリガーされません。これを行う方法について何かアイデアはありますか?

4

1 に答える 1

0

したがって、Apple のドキュメントでは、スクロール ビュー内に a をネストしないことを強く推奨しています。UIWebView

重要: UIWebView または UITableView オブジェクトを UIScrollView オブジェクトに埋め込まないでください。これを行うと、2 つのオブジェクトのタッチ イベントが混同され、誤って処理される可能性があるため、予期しない動作が発生する可能性があります。

iOS 5 以降では、UIWebView( を使用してscrollView) プロパティの基になるスクロール ビューに直接アクセスできます。これをいじってみると役立つかもしれません。

于 2012-03-11T20:34:22.390 に答える