描述:点击播放按钮后,只能听到声音,而画面是白的….一直白…想到应该是硬件加速的问题
1.确认硬件加速(非此因素)
在WebViewActivity.java中发现
webView.setLayerType(View.LAYER_TYPE_HARDWARE, null);
2.确认AndroidManifest.xml(非此因素)
application节点下并没有发现
android:hardwareAccelerated="true"
在WebViewActivity中,也无该配置
-
尝试: WebViewActivity.java中,注释
webView.setLayerType(View.LAYER_TYPE_HARDWARE, null);
在AndroidManifest.xml节点下加入android:hardwareAccelerated="true"
- 结果…...没用
3.检查activity_web_view.xml
<WebView
android:id="@+id/webView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scrollbars="none"
android:visibility="@{showError?View.GONE:View.VISIBLE}" />
没问题.
BUT….
<LinearLayout
android:layerType="software"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<include layout="@layout/layout_toolbar" />
<ProgressBar
android:id="@+id/web_load_progress"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="match_parent"
android:layout_height="2dp"
android:indeterminateOnly="false"
android:max="100"
android:progress="@{progress}"
android:progressDrawable="@drawable/progress_bar_states"
android:visibility="gone" />
<WebView
android:id="@+id/webView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scrollbars="none"
android:visibility="@{showError?View.GONE:View.VISIBLE}" />
</LinearLayout>
父布局竟然android:layerType="software"
- 解决,删掉该属性即可