UISplitViewController + UIPageViewController + WKWebView =有时无法翻页

时间:2015-12-07 03:14:36

标签: ios uisplitviewcontroller uipageviewcontroller wkwebview

我有UISplitViewController,其详细信息为UIPageViewController。每个页面视图控制器只显示WKWebView

问题是在横向模式的iPhone 6(s)Plus上,我无法使用页面视图控制器在页面之间滚动如果显示的html包含非常共同<meta name='viewport' content='width=device-width'>。我仍然可以滚动,缩放和平移WKWebView,但UIPageViewController根本不允许我翻页。

问题不会出现在其他水平常规环境(任何方向的iPad),也不会出现在任何紧凑型环境中(纵向模式下的iPhone 6 Plus或其他iPhone)。 UIPageViewController是否使用&#34;滚动&#34;并不重要。过渡风格或页面卷曲。

我做错了什么,或者这是Apple的错误?如果是后者,是否有任何解决方法?

2 个答案:

答案 0 :(得分:0)

好的,我有同样的问题。我有一个自定义的SplitViewController,但行为相同(无法在横向上刷到iPhone 6 Plus的下一页)。问题在于,splitview必须使webview只是一个像素或太小,以便webview的手势识别器捕获了针对UIPageView的触摸事件。为什么?因为webview的内容必须滚动&#34;在一个像素左右。略微调整我的分数比率就可以了。

尝试稍微调整preferredPrimaryColumnWidthFraction,我确定这样可以解决您的问题。

答案 1 :(得分:0)

UISplitViewController向WKWebView控件报告的宽度不正确,可能与拆分器分隔线有关。这导致WKWebView的水平滚动,这与UIPageViewController冲突。使用此代码来解决此问题:

webView.scrollView.contentInset = UIEdgeInsetsMake(0, -1, 0, 0)