1

我正在深入研究 iOS 开发,为此我正在开发一个显示博客文章的简单应用程序。

我的 DetailViewController 中有以下设置:

我的 DetailViewController

我想要实现的是,当用户在屏幕上向左或向右滑动时,我会更改 webView 的内容。

然而,滑动手势似乎被 UIWebView 吞噬了,所以我想我可以在顶部制作一个透明的 UIView(“Posts Detail Touch Interceptor View”)并让它处理滑动手势并将它们转发到 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 回答