我希望逐个获取每个网页的内容高度。但我没有得到那个。如果我单独加载页面,那么我可以获得每页的高度。但如果我试图连续获得网页的内容高度,那么我就失败了。
这是我的代码 -
StringBuffer content;
String temp;
for(i=tempstart_index;i<=tempend_index;i++)
{
Log.i("value of i",i+1+"");
content+=decrypted(i);
temp1=decrypted(i);
// TODO Auto-generated method stub
webview.setWebViewClient(new WebClient());
{
@Override
public void onPageFinished(WebView view, String url)
{
webview.loadUrl("javascript:window.HTMLOUT.getContentHeight(document.getElementsByTagName('html')[0].scrollHeight);");
int initialpageheight=webview.getContentHeight();
if(initialpageheight>0)
{
webheight=initialpageheight;
//Toast.makeText(getApplicationContext(), ""+initialpageheight, Toast.LENGTH_LONG).show();
Log.i("page finish","" +webheight);
initialpage=webheight;
if(pagenumber>0)
{
webview.scrollTo(0, webheight);
}
}
}});
webview.loadDataWithBaseURL("file:///android_asset/KH_Brown_Fixed_Layout/",temp1,
"text/html", "utf-8",null);
}
return content;
}
然后我在合并字符串后将所有合并页面显示为一页 -
//这里reflowable()读取html并合并它们并在合并后返回它。
String ds=reflowable();
webview.loadDataWithBaseURL("file:///android_asset/KH_Brown_Fixed_Layout/", ds, "text/html", "utf-8", null);
答案 0 :(得分:3)
在JavaScript中,您可以使用以下命令获取Webkit浏览器页面的高度:
window.innerHeight
至于你在那里尝试了什么,我没有任何线索,但这会在你的Android浏览器中为你提供高度。