0

我正在尝试在一组 5 个 UIWebViews 中呈现本地 html5 内容。这个想法是用户会滑动到 4 个方向,所以我得到了 5 个 UIWebViews 并禁用了弹跳:

leftWebView.scrollView.bounces = NO;
middleWebView.scrollView.bounces = NO;
rightWebView.scrollView.bounces = NO;
upWebView.scrollView.bounces = NO;
downWebView.scrollView.bounces = NO;

我们假设 webviews 中不可能滚动,因为显示的 html 页面比 iPad 屏幕小。

加载这些 web 视图,以便通过移动它们的中心来平滑过渡动画。

那么有没有办法改变 UIWebView 中手势识别器执行的滑动操作?

我尝试将 4 个 SwipeGesturesRecognizers(每个方向一个)直接放在 webViews 上,但由于某种原因,当我交换引用时,手势识别器失去了对 WebViews 的跟踪:

UIWebView *tmp = leftWebView;
leftWebView = middleWebView;
middleWebView = rightWebView;
rightWebView = tmp;

我尝试在窗口顶部的 UIView 上使用 4 个 SwipeGesturesRecognizers(每个方向一个),但现在点击被此视图阻止,因此用户无法再与可点击元素进行交互。

4

1 回答 1

1

您可以UISwipeGestureRecognizer向您的 webView 添加自定义 .. 并像这样禁用 webView 中的滚动

UIScrollView *scroll = [[self.webView subviews] lastObject];

if([scroll isKindOfClass:[UIScrollView class]])
{
    scroll = (UIScrollView*)scroll;
    [scroll setScrollEnabled:NO];
}
于 2012-05-16T13:23:34.030 回答