在布局(线性、垂直)层次结构中,我有多个视图,其中之一是 WebView。
它们都有相同的参数:
android:layout_width="fill_parent"
android:layout_height="wrap_content"
对于所有视图,元素之间的间距都得到正确处理,但对于 Web 视图,内部显示的文本后面有很多空格。
我使用布局在活动的“onCreate”方法中设置了 webview 的(HTML)文本。
有没有办法让 webview 自行调整大小以匹配其内容大小?
顺便说一句,剩余空间因设备而异(模拟器、里程碑、英雄)
任何想法?谢谢
我确信这已经太晚了,但是添加对我有用的方法,以防其他人来这里寻找解决方案。
页面加载完成后,我将注入一个 javascript 方法来回调我的 JS 挂钩。在这个方法中,我传递了 的大小。
private void setupWebView() {
webView.getSettings().setJavaScriptEnabled(true);
webView.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
webView.loadUrl("javascript:MyApp.resize(document.body.getBoundingClientRect().height)");
super.onPageFinished(view, url);
}
});
webView.addJavascriptInterface(this, "MyApp");
}
@JavascriptInterface
public void resize(final float height) {
MyActivity.this.runOnUiThread(new Runnable() {
@Override
public void run() {
webView.setLayoutParams(new LinearLayout.LayoutParams(getResources().getDisplayMetrics().widthPixels, (int) (height * getResources().getDisplayMetrics().density)));
}
});
}
也可以看到同样的解决方案here. http://capdroid.wordpress.com/2014/08/07/resizing-webview-to-match-the-content-size/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)