我試圖檢索webview內容的高度。它包含一個html字符串。 問題是無論html字符串有多長,getContentHeight()都會返回相同的值(392)。GetContentHeight()無法正常工作
回答
這個問題迫使我堅持下去。讓我猜一猜:您的內容不是從網絡或文件系統加載的,而是您撥打WebView.loadData()
或WebView.loadDataWithBaseUrl()
(其中您指定null
或在後一種情況下爲空字符串)。對?
如果是的話,那麼我想我有被this discussion啓發你的解決方案:一定要使用WebView.loadDataWithBaseUrl()
方法,並提供一個baseUrl
這是不null
,而不是一個空字符串,併爲不同的內容數據不同。根據SDK文檔,baseUrl
僅用於評估數據中的相對URL(例如,<img>
標籤未在其src
屬性中指定域名),因此如果您的數據未引用外部內容,我想您可以生成「虛擬」URL (還沒有嘗試過)。
看起來好像WebView
正在查看網址,如果它不改變所有後續調用loadData...
將導致WebView
的高度相同。
是的,就是這樣。我終於通過在文本中插入錨點並立即跳轉到此錨點來加載(我需要高度滾動一定數量)來解決問題。但我確實感到困惑,getcontentheight無法正常工作......非常感謝您的幫助! – nob 2011-04-07 07:35:56
我也有getContetHeight()這個問題。 首先在WebViewClient.OnPageFinish()回調內容高度還沒有設置,所以我做了它非常強大的解決方案。
Handler h;
Runnable scroll_updater = new Runnable() {
@Override
public void run() {
if(Thread.interrupted())
return;
if(lyrics.getContentHeight() == 0)
h.postDelayed(this, 100);
setLyricsScroll();
}
};
- 1. START_STICKY無法正常工作
- 2. DataTrigger無法正常工作
- 3. YTPlayerView無法正常工作
- 4. @ Html.ValidationMessageFor無法正常工作
- 5. AppDomain.CurrentDomain.SetupInformation.ConfigurationFile無法正常工作
- 6. .fadeIn()無法正常工作
- 7. OnTouchListener無法正常工作
- 8. .htaccess無法正常工作
- 9. glTexSubImage2D無法正常工作
- 10. $ ionicScrollDelegate.getScrollPosition無法正常工作
- 11. Seekbar無法正常工作
- 12. onProviderEnabled無法正常工作?
- 13. Validation.HasError無法正常工作
- 14. Math.h無法正常工作?
- 15. document.createElement無法正常工作
- 16. Input.GetKeyDown無法正常工作
- 17. Bootstrap無法正常工作
- 18. PIDinRootline無法正常工作
- 19. PushNotification無法正常工作
- 20. wcstok()無法正常工作?
- 21. mapView:didSelectAnnotationView:無法正常工作。
- 22. killBackgroundProcesses無法正常工作
- 23. Bootstrap無法正常工作
- 24. uibarbuttonitem無法正常工作
- 25. MessageFormat無法正常工作
- 26. json_decode無法正常工作
- 27. mediaplayer無法正常工作
- 28. Viewpager無法正常工作
- 29. TransactionTimeout無法正常工作
- 30. Gradle無法正常工作
您是否嘗試清除緩存? – TheCottonSilk 2011-01-23 12:37:46