如何了解您的应用程序是否使用硬件加速
How to understand uses your application hardware acceleration or not
我想为应用程序启用硬件加速。
我在 Android 清单行中添加了
<application
android:hardwareAccelerated="true"/>
我认为这一行应该在应用程序的所有视图上启用硬件加速,但是当我检查时(使用方法 view.getLayerType()),我得到的结果是 0。
我断定你没有使用硬件加速
我不明白硬件加速是如何工作的。
为什么我在应用层开启了硬件加速,应用中的所有视图都调用方法view.getLayerType() return 0?
我预计应该 return 2,因为我将硬件加速提升到了一个更高的水平。
不是这样吗?
对于每个视图,事实证明您需要在 xml ?
中设置 属性 android:layerType
你提到的标签确实打开了硬件加速,但你只需要它用于 API 13 或更低版本,因为它在 API 版本 14 及更高版本上默认打开。
要检查您的视图(或Canvas,对于您正在绘制的自定义视图)是否正在使用硬件加速,您可以调用
View.isHardwareAccelerated()
Canvas.isHardwareAccelerated()
getLayerType()
returns视图的图层类型,默认为NONE:
By default a view does not have a layer, and the layer type is
LAYER_TYPE_NONE.
此外,请记住,您应该在视图附加到 window 后调用 isHardwareAccelearted()
,以获得正确的响应。在此之前答案可能不正确。
干杯
我想为应用程序启用硬件加速。
我在 Android 清单行中添加了
<application
android:hardwareAccelerated="true"/>
我认为这一行应该在应用程序的所有视图上启用硬件加速,但是当我检查时(使用方法 view.getLayerType()),我得到的结果是 0。 我断定你没有使用硬件加速
我不明白硬件加速是如何工作的。
为什么我在应用层开启了硬件加速,应用中的所有视图都调用方法view.getLayerType() return 0?
我预计应该 return 2,因为我将硬件加速提升到了一个更高的水平。
不是这样吗?
对于每个视图,事实证明您需要在 xml ?
你提到的标签确实打开了硬件加速,但你只需要它用于 API 13 或更低版本,因为它在 API 版本 14 及更高版本上默认打开。
要检查您的视图(或Canvas,对于您正在绘制的自定义视图)是否正在使用硬件加速,您可以调用
View.isHardwareAccelerated()
Canvas.isHardwareAccelerated()
getLayerType()
returns视图的图层类型,默认为NONE:
By default a view does not have a layer, and the layer type is LAYER_TYPE_NONE.
此外,请记住,您应该在视图附加到 window 后调用 isHardwareAccelearted()
,以获得正确的响应。在此之前答案可能不正确。
干杯