设置android后,使用WebView发出奇怪的闪烁:hardwareAccelerated =“true”

时间:2013-07-11 06:12:02

标签: android webview flicker

设置android:hardwareAccelerated="true"mWebView.setBackgroundColor(Color.TRANSPARENT)

后,使用WebView进行奇怪的闪烁

没人,没有闪烁。

2 个答案:

答案 0 :(得分:0)

我为应用程序启用了硬件加速,并为活动禁用了它。另外,我将背景设置为“null”,如上所述。它现在对我有用。另一种方法(未经测试):将图层类型设置为软件渲染并将背景设置为Color.TRANSPARENT(或“0”):webview.setLayerType(View.LAYER_TYPE_SOFTWARE, null);

答案 1 :(得分:0)

不要在代码中硬编码标志,这不是最佳做法! 您可以在四个级别启用该功能。

窗口级别:

getWindow().setFlags(
    WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED,
    WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED);

查看级别:

myView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);

活动等级:

<application android:hardwareAccelerated="true">
    <activity ... />
    <activity android:hardwareAccelerated="false" />
</application>

Applecation Level:

<application android:hardwareAccelerated="true" ...>

ref http://developer.android.com/guide/topics/graphics/hardware-accel.html