项目中有牵涉新闻的部分,新闻里面用的是WebView和RecyclerView
因为惠引入很多三方的web地址,部分WebView出现底部白屏,也有二级页白屏的问题(这个是因为自身原因,重定向后没有重新设置高度)
找了相关资料,总算是给解决了
以下是解决白屏的代码
首先在JavascriptInterface 里面注册一个 重新设置WebView的方法
public class BaseFunc {
public BaseFunc(Activity mActivity, WebView webView)
{ this.mActivity = mActivity;
this.webView = webView;
}
//注册一个重新计算高度的方法
@JavascriptInterface
public void resize(final float height) {
mActivity.runOnUiThread(new Runnable() {
@Override
public void run() {
webView.setLayoutParams(new RelativeLayout.LayoutParams(mActivity.getResources().getDisplayMetrics().widthPixels, (int) (height * mActivity.getResources().getDisplayMetrics().density))); } }); }
}
以下是WebView页面中的代码
/** * 初始化js调用本地的方法 basefunc.go