0

我正在做一個這樣的動作的iOS應用程序。在IOS中,如何知道UIWebView的滾動條是否在頂部?

http://www.flickr.com/photos/[email protected]/6721920809/是一個全屏幕的Web視圖。當滾動條位於頂部時,如果我觸摸了網頁視圖,它會關閉並覆蓋屏幕的一半。 (如果滾動條不在頂部,則動作不會)

http://www.flickr.com/photos/[email protected]/6721847313/像這樣。

我很困惑如何知道滾動條位置在哪裏。

UIWebView有幾個屬性,我想我需要將UIWebView嵌入到UIScrollView中,還是必須使用javascript?

+0

我不知道如果我正確地讀你的問題,但UIWebView的確基本上是一個UIScrollView。因此,以下工作:'webViewObject.scrollView.contentOffset' < - x,y座標是偏移量。如果y == 0,那麼你在頂部。你可以KVO改變的價值,看看你是否在頂部。 – pkluz 2012-01-18 20:47:43

+0

謝謝,wasabii。這很有幫助。 – droughtrain 2012-01-18 21:34:29

回答

0

不知道你想要做什麼,但如果你想整體移動UIWebView,我會將它添加到一個UIView,然後把UIView放到一個UIScrollView中。這將保持它相對於你添加到UIView的任何其他元素的固定位置。你可能會發現一些奇怪的行爲,儘管UIWebView已經包含了一個UIScrollView,並且觸摸事件必須在兩者之間正確處理。

如果你想找出Web視圖多遠向下滾動「內部」本身,你可以使用這個小黑客:

NSString *scrollTopStr = [webView stringByEvaluatingJavaScriptFromString:@"document.body.scrollTop;"];  
NSLog(@"scroll top: %@", scrollTopStr); 
相關問題