在用戶仍在滾動時,如何獲取有關UIScrollView的contentOffset或類似信息?例如,如果我想將圖像作爲標題放在UIWebView內容的正上方,而圖像不是WebView的scrollView的一部分,但在用戶滾動時更新它,而不是在它們放開後跳到位置。我怎麼能這樣做呢?如何獲取UIScrollView中間滾動的contentOffset?
0
A
回答
1
在iOS 5中,UIWebView
有一個scrollView
屬性,它是負責處理滾動的UIScrollView
。在iOS 5之前,您可以使用[subview isKindOfClass:[UIScrollView class]]
搜索子視圖的UIWebView
的子視圖屬性。
一旦你有了UIScrollView
,你就可以設置它的委託屬性。在委託中,您可以在用戶滾動時回覆scrollViewDidScroll:
消息,並更新標題視圖的位置/內容。
加了:29/2/2012 - 爲了保留UIWebView
的功能,您需要將攔截的UIScrollViewDelegate
方法轉發給UIWebView
。爲此,您可以在協議中所有強制方法的末尾調用UIWebView,併爲可選協議方法實施類似forwardInvocation:
或forwardingTargetForSelector
的操作。這將保留您的原始UIWebView
行爲,並允許您使用自己的邏輯對其進行增強。
0
相關問題
- 1. UIScrollView自動滾動後,我設置contentOffset
- 2. 如何在動畫過程中獲取UIScrollView contentOffset
- 3. UITableView contentOffset在UIScrollView滾動後重置
- 4. 獲取滾動視圖當前contentOffset
- 5. contentOffset UIScrollView
- 6. 如何正確動畫UIScrollView contentOffset
- 7. 如何更改UIScrollView contentOffset動畫速度?
- 8. UIScrollview的ContentOffset問題
- 9. UIScrollView contentOffset的錯誤?
- 10. 如何在UIScrollView中取消滾動
- 11. 如何計算運動中的UIScrollView的目標contentOffset
- 12. 如何更改UIScrollView的ContentOffSet Xcode
- 13. 取消UIScrollView滾動
- 14. 截取UIScrollView滾動
- 15. 跟蹤UIScrollview contentoffset - iOS
- 16. 第一次動畫UIScrollView contentOffset動畫
- 17. Contentoffset的平滑移動UIScrollView Swift
- 18. UIScrollView/UITableView設置ContentOffset殺死慣性/滾動?
- 19. 如何動態滾動UIScrollView?
- 20. 滾動發生時獲取UIScrollView翻譯?
- 21. CATransform3D奇怪的UIScrollView contentOffset
- 22. 從contentOffset點開始截取UIScrollView?
- 23. 如何加快UIScrollView中的滾動?
- 24. 的UIScrollView滾動
- 25. 的UIScrollView滾動
- 26. 跟蹤UIScrollView contentOffset始終
- 27. UIScrollView裏面的UIScrollView:滾動
- 28. UIScrollView裏面的UIScrollView滾動
- 29. 如何使用contentOffset集中在UIScrollView中的內容
- 30. 如何在UIScrollView中平滑滾動?
當我實現這個,我可以得到所描述的contentOffset,但縮放是搞砸了。我註釋了「webview.scrollView.delegate = self;」並且縮放是固定的。有任何想法嗎? – Greg 2012-02-26 23:23:46
@Greg正如我在我的回答中所說的,你不能用'UIWebView'來做這件事。如果您將自己設置爲UIWebView的'UIScrollView'的委託,那麼您就是踩着'UIWebView'。它不能做到。 – 2012-02-27 11:50:09
然後在完成你需要做的事情之後,將所有委託調用轉發給webview本身。即將自己留作委託,然後在委託方法中向webview發送相同的消息和參數。 – ikuramedia 2012-02-28 16:26:00