禁用滚动 UIPageViewController
Posted
技术标签:
【中文标题】禁用滚动 UIPageViewController【英文标题】:Disable scrolling UIPageViewController 【发布时间】:2014-11-10 21:00:34 【问题描述】:我想 直到 webview 在 ViewController 中加载。 加载 webview 后,在 PageViewController 中启用滚动。 我用:
for (UIScrollView *view in self.pageViewController.view.subviews)
if ([view isKindOfClass:[UIScrollView class]])
view.scrollEnabled = NO;
但这会永远禁用滚动。
请帮帮我!
【问题讨论】:
【参考方案1】:简单。在 if 块内,存储对滚动视图的引用以供以后使用。然后,实现 UIWebView 的委托方法 webViewDidFinishLoad:
和 webView:didFailLoadWithError:
,并在这两个方法中使用您之前捕获的引用重新启用滚动。
参考文档:https://developer.apple.com/library/ios/documentation/Uikit/reference/UIWebViewDelegate_Protocol/index.html
【讨论】:
原来我必须使用上面的代码?但是如何控制另一个视图控制器中的滚动视图?我确实意识到我需要使用委托 webview。但我不知道如何在另一个视图控制器中控制我的滚动视图?你能展示一个示例代码吗? 这非常非常依赖于您如何实例化视图控制器以及它们之间的关系。使用包含的代码提出一个新问题,我会看看是否可以为您回答。如果这是正确答案,你能接受吗? 我用:appcoda.com/uipageviewcontroller-storyboard-tutorial 只用webview代替图片 好吧,这并没有改变这是一个不同的问题,一个可能已经被其他人回答过的问题。 也许您对代码有一些想法?还是我应该等待其他答案?以上是关于禁用滚动 UIPageViewController的主要内容,如果未能解决你的问题,请参考以下文章
在其中一个页面中包含的 UISwitch 上开始触摸时禁用 UIPageViewController 滚动
禁用 UIPageViewController 弹跳 - Swift [重复]