gpt4 book ai didi

android - 如何在 android WebView 中获取整个高度?

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:07:41 29 4
gpt4 key购买 nike

我有一个 RelativeLayoutWebView。我正在将一些生成的 html 文本加载到该 WebView 中。加载数据后 WebView 高度超出屏幕。现在我需要整个 WebView 的高度。到目前为止,我尝试了 WebView#getHeight()WebView#getBottom() 但我得到的是可见内容的高度。

如何获取WebView的总高度? screen height

最佳答案

我终于得到了问题的答案。这就是答案。

加载 WebView 后,我们将在 WebViewClient#onPageFinished 中调用我们需要调用 javascript 来获取 WebView 完整内容的高度

WebViewClient

/**
* Custom web client to perform operations on WebView
*/
class WebClient extends WebViewClient {

@Override
public void onPageFinished(WebView view, String url) {
view.loadUrl("javascript:AndroidFunction.resize(document.body.scrollHeight)");
}
}
}

之后,我们将在注册为 JavascriptInterfaceWebInterface 类中获得带有高度的回调

/**
* WebView interface to communicate with Javascript
*/
public class WebAppInterface {

@JavascriptInterface
public void resize(final float height) {
float webViewHeight = (height * getResources().getDisplayMetrics().density);
//webViewHeight is the actual height of the WebView in pixels as per device screen density
}
}

关于android - 如何在 android WebView 中获取整个高度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43394498/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com