Мне нужно получить высоту моего веб-просмотра, который я загружаю со статическим контентом, но возвращаемая высота всегда равна нулю.
Сначала я думал, что это потому, что веб-просмотр не был загружен при запросе высоты, поэтому я попытался установить его в OnPageFinished через клиент веб-просмотра. Это работает при загрузке страницы из Интернета, но не при загрузке локального контента.
String html = "<html><head><title>Test</title></head><body><p>Insert content here</p></body></html>";
qWebView = (WebView) findViewById(R.id.webView1);
qWebView.loadDataWithBaseURL(null, html, "text/html", "utf-8", null);
qWebView.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
int height = qWebView.getContentHeight();
Toast.makeText(WebviewHeightTestActivity.this, String.valueOf(height), Toast.LENGTH_SHORT).show();
}
});
.
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<WebView android:id="@+id/webView1" android:layout_width="match_parent" android:layout_height="wrap_content"></WebView>