我想为应用程序启用硬件加速。
我在Android清单行中添加了
<application
android:hardwareAccelerated="true"/>
我认为这一行应该在应用程序的所有视图上启用硬件加速,但是当我检查(使用方法view.getLayerType())时,我得到0的结果。 我的结论是你没有使用硬件加速
我不明白硬件加速是如何工作的。
为什么我在应用程序级别上转换硬件加速,应用程序中的所有视图都调用方法view.getLayerType()返回0?
我希望应该返回2,因为我将硬件加速转向了更高的水平。
不是吗?
对于每个视图,事实证明你需要在xml中设置属性android:layerType?
答案 0 :(得分:0)
您提到的标签确实启用了硬件加速功能,但您只需要API 13或更低版本,因为默认情况下这是API版本14及更高版本。
要检查您的视图(或Canvas,对于您正在绘制的自定义视图)是否正在使用硬件加速,您可以调用
View.isHardwareAccelerated()
Canvas.isHardwareAccelerated()
getLayerType()
返回视图的图层类型,默认情况下预期为NONE:
默认情况下,视图没有图层,图层类型为 LAYER_TYPE_NONE。
另外,请记住,您应该在视图附加到窗口后调用isHardwareAccelearted()
,以获得正确的响应。在此之前,答案可能不正确。
干杯