所以我只有一个标准的 UIViewController,里面有一个 UIWebView,它显示一个 pdf。对于应用程序功能,我需要能够响应 UIWebView 的嵌套 UIScrollView 事件,例如 scrollViewWillBeginDragging、scrollViewDidScroll 等。
我可以访问 scrollView 的唯一方法是(这似乎是一个 hack)进入并通过 subviews 数组获取它:
for (id subview in webView.subviews){
if ([[subview class] isSubclassOfClass: [UIScrollView class]]) {
UIScrollView * s = (UIScrollView*)subview;
s.delegate = self;
s.tag = 1;
scrollView = s;
}
}
但这似乎带来了比其价值更多的问题,因为我失去了像缩放这样的原生 UIScrollView 的东西。
所以总结一下我需要什么:
将我的 UIViewController 类设置为 UIWebView 内的 UIScrollView 代表的最佳方法是什么?我是否需要对我自己的 UIWebView 进行子类化,以便它以某种方式处理来自 UIWebView 中内置的事件,然后以某种方式将其传递给 UIViewController?无论如何,那个传递的东西是如何工作的?
请指教!
谢谢!