簡體   English   中英

如何獲得合適的UIWebView滾動內容大小?

[英]How to get proper scroll content size of UIWebView?

我正在嘗試獲取UIWebView滾動內容的大小- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType方法,以便在存在水平滾動時顯示箭頭圖像。

1)我嘗試過webView.scrollview.contentSize來獲取滾動內容的大小,但是即使內容大小更大,它也總是為我提供webview的幀值。

2)我嘗試過

CGSize contentSize = CGSizeMake([[webView stringByEvaluatingJavaScriptFromString:@"document.body.scrollWidth;"] floatValue],
                                [[webView stringByEvaluatingJavaScriptFromString:@"document.body.scrollHeight;"] floatValue]);

即使上述第二種方法也無法提供適當的內容大小。

他們是獲取准確的webview嵌入式scrollView的內容大小的直接方法還是弄錯了?

我想這不是您希望的答案,但是您的方法是錯誤的。

- (BOOL)webView:(UIWebView *)webView should**Start**LoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType

您會看到,當調用此方法時,之所以被調用,是因為將要啟動一個新請求。 此時,UIWebView尚未收到您的頁面,因此可能無法為您提供正確的contentSize。

也嘗試使用offsetWidth/offsetHeight

CGSize contentSize = CGSizeMake([[webView stringByEvaluatingJavaScriptFromString:@"document.body.offsetWidth;"] floatValue],
                                [[webView stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight;"] floatValue]);

看看我前一段時間寫的這篇博客,當時我不得不做類似的事情: http : //www.pixeldock.com/blog/set-the-height-of-a-uiwebview-to-the-height-of-其-HTML內容/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM