WebView常见问题
1.网页不能顶满
问题来源:项目中保存红包页面红包不能正常显示。
红包页面继承自一个自定义的Activity_Base
该页面原布局 activity_base.xml 如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/mainlayout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#ffffff"
android:fitsSystemWindows="true"
android:orientation="vertical">
<include layout="@layout/app_title" />
<View
android:id="@+id/titleline"
android:layout_width="fill_parent"
android:layout_height="1px"
android:background="#dfdfdf" />
</LinearLayout>
只有标题,没有定义内容,剩下的部分会根据内容自适应,将 web_view_noShare.xml 中 layout_height 改为 match_parent 也没用,只有在代码中进行操作
解决方法:先看 红包 web_view_noShare 页面 :
<?xml version="1.0" encoding="utf-8"?>
<WebView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/web_view_noShare"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ffff00"/>
再在 Activity_NoShareWebView 中加入代码:
// 将webView设置为顶满屏幕
webView = findViewById(R.id.web_view_noShare);
LinearLayout.LayoutParams llp = (LinearLayout.LayoutParams)webView.getLayoutParams();
llp.weight = LinearLayout.LayoutParams.MATCH_PARENT;
llp.height = LinearLayout.LayoutParams.MATCH_PARENT;
webView.setLayoutParams(llp);
完美解决!