【发布时间】:2017-02-24 07:00:43
【问题描述】:
当我在webView 中加载html 字符串但内容正在滚动并且scrollViewDidScroll 没有被调用时,我试图在scrollViewDidScroll: 方法中获取回调。如果我在 webView 中传递 URLRequest 对象,它可以正常工作。
我注意到的一件事是,如果我尝试加载 html 字符串,则 scrollView 内容大小与滚动视图大小相同,如果我尝试加载 url,它会给出 scrollView 内容大小大于 scrollView 大小,在这种情况下 @987654325 @接电话。
我尝试了很多东西。首先我设置滚动视图委托webView.scrollView.delegate = self 并实现scrollViewDidScroll: 方法但它不起作用,然后我创建了一个符合滚动视图委托的webView 子类。我将scrollViewDidScroll: 覆盖为
protocol MyWebViewDelegate: class {
func myWebViewDidScroll(_ scrollView: UIScrollView)
}
class MyWebView: UIWebView {
public weak var scrollViewDelegate: MyWebViewDelegate?
override func scrollViewDidScroll(_ scrollView: UIScrollView) {
super.scrollViewDidScroll(scrollView)
scrollViewDelegate?.myWebViewDidScroll(scrollView)
}
}
现在我符合MyWebViewDelegate 协议并实现方法myWebViewDidScroll:。完成所有工作后,我在myWebViewDidScroll: 中收到了回调,但是当滚动视图反弹时。
【问题讨论】:
标签: ios swift uiscrollview uiwebview