当用户还在滚动时,如何获取有关UIScrollView的contentOffset或类似信息?例如,如果我想将图像作为标题放在UIWebView的内容正上方,而不是图像是WebView的scrollView的一部分,而是在用户滚动时更新它,而不是仅仅在它们放开后跳到该位置。我怎么能这样做?
答案 0 :(得分:1)
在iOS 5中,UIWebView
有一个scrollView
属性,UIScrollView
负责处理滚动。在iOS 5之前,您可以使用UIWebView
在[subview isKindOfClass:[UIScrollView class]]
的子视图属性中搜索子视图。
获得UIScrollView
后,您可以设置其委托属性。在代理中,您可以在用户滚动时回复scrollViewDidScroll:
消息,并更新标题视图的位置/内容。
已添加:2012年2月29日 - 为了保留UIWebView
的功能,您还需要将截获的UIScrollViewDelegate
方法转发给UIWebView
。为此,您可以在协议中的所有必需方法的末尾调用UIWebView,并为可选的协议方法实现forwardInvocation:
或forwardingTargetForSelector
之类的操作。这将保留您原来的UIWebView
行为,并允许您使用自己的逻辑来增强它。
答案 1 :(得分:0)
为什么不能将标题作为单独的视图放在UIWebView
上方?为什么它必须是子视图?