android获取webview高度
时间: 2023-07-30 22:07:04 浏览: 165
你可以使用 `WebView` 的 `getHeight()` 方法来获取 `WebView` 的高度。但是,这个方法只会返回 `WebView` 的布局高度,并不会包含 `WebView` 加载的内容的高度。
为了获取 `WebView` 加载的内容的高度,你需要在 `WebView` 加载完成后使用 `JavaScript` 来获取内容的高度,然后再将其传递给 `Android` 端。以下是一个示例代码:
```java
webView.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
// 获取 WebView 内容的高度
view.evaluateJavascript("(function() { return document.body.scrollHeight; })();", new ValueCallback<String>() {
@Override
public void onReceiveValue(String value) {
// 将内容高度传递给 Android 端
int contentHeight = Integer.parseInt(value);
// do something with contentHeight
}
});
}
});
```
在上面的代码中,我们使用 `evaluateJavascript()` 方法来执行 `JavaScript` 代码,并在其中返回 `document.body.scrollHeight`,即内容的高度。然后,我们通过 `ValueCallback` 将内容的高度传递给 `Android` 端。
阅读全文