2013-07-29 120 views
0

所以我有一個UIWebView只能水平滾動,而且它只能在垂直滾動的UIScrollView中滾動。我幾乎設法實現這一點,但我有一個小問題。UIScrollview中的UIWebview發送垂直滾動事件滾動視圖

UIWebiew的滾動內容高度被設置爲webviews框架的高度,因此它不會垂直滾動,但即使在這種情況下,它仍似乎消耗垂直滾動事件(有時),因爲我可以看到側滾動條顯示,但它不會滾動(並且不滾動webview所包含的滾動視圖)。

它需要這樣,因爲有一些需要與web視圖垂直滾動的元素,而不是水平(認爲Safari瀏覽器應用程序如何與web視圖地址欄滾動)

沒有人知道如何我會通過垂直滾動事件,但保持UIWebView的水平滾動事件?

我看了一下this answer,但它不是很想找

更新什麼IM:

所以通常就在我問的問題我找到另外一個問題一個合適的答案......(已經目前正在尋找幾個小時)this answer應該做的伎倆對我來說,生病給它一個去報到

回答

0

只需設置

scrollView.alwaysBounceVertical = NO; 
scrollView.contentSize = CGSizeMake(
    scrollView.frame.size.width, scrollView.contentSize.height); 
scrollView.showsVerticalScrollIndicator = NO; 

編輯: 似乎沒有工作。太糟糕了..

嘗試實施

- (BOOL)gestureRecognizer:(UIGestureRecognizer*)gst 
    shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer*)gst2 { 
    return YES; 
} 

..in包含滾動視圖和web視圖,甚至滾動視圖本身(包含web視圖)你的看法。

+0

heh yep這就是我目前所擁有的,它仍然消耗垂直滾動事件,雖然它不能實際滾動這是問題 – Fonix

0

所以解決方案,我發現我發佈的問題大部分工作,它確實是我需要的,但由於某種原因後,網頁加載,它滾動標題欄,只顯示網頁,而不是世界的盡頭,但它並不漂亮。似乎事件發生在webViewDidFinishLoad:之後,所以我不能將它重新定位回頂端。生病不停地修補,也許我可以找出爲什麼要這樣做。

+0

我處理標題通過將它放在UIView動畫中跳出屏幕它會動畫屏幕而不是跳躍(顯然webviews自動設置他們的內容偏移量爲0,0當頁面完成加載時) – Fonix

+0

我也有一個問題,在向webview的scrollview添加子視圖一半後,網頁將不可點擊,我通過在位置0插入子視圖(所以它在視圖層次結構的後面)來修復它,不知道它爲什麼可以工作,但它確實如此。 – Fonix