我对Honeycomb硬件加速有点困惑。文档说明要在清单中添加一行,然后它会讨论视图的硬件支持层。如果我只是添加清单行,我默认情况下是在应用程序范围内将其打开,或者我是否必须为我的应用程序中的所有视图打开它?
谢谢!
答案 0 :(得分:4)
如果在清单中添加属性,您将在每个视图上获得硬件加速。然后,每个绘图操作(drawText,drawBitmap等)将被硬件加速。但是,您可以指定View的图层类型以将该视图缓存到硬件层(OpenGL纹理)。即使启用了硬件加速,一些复杂的视图也可能需要很长时间才能渲染,这可能会影响动画。通过启用View的硬件层,您只需渲染一次视图(+每当它改变时)。例如,如果您执行以下操作:
view.setLayerType(View.LAYER_TYPE_HARDWARE, null);
ObjectAnimator.ofFloat(view, "alpha", 0.0f);
视图会淡出,但其绘图代码只会被调用一次。