在StateListDrawable中将android:constantSize设置为'true'有什么好处?

时间:2012-01-16 23:22:40

标签: android performance android-layout

如果您曾经为Android制作自己的自定义按钮,那么您将使用StateList Drawable;或者你应该有。现在,如果您查看Android documentation for StatList Drawables,那么您将看到有一个名为“android:constantSize”的选项,据说行为如下:

  

布尔值。如果可绘制的报告内部大小随状态变化而保持不变(大小是所有状态的最大值),则为“true”;如果大小因当前状态而异,则为“false”。默认为false。

现在这一切都很好。我认为它告诉我,如果图像的大小在任何状态下都没有改变,那么你应该将其设置为true。我的问题是:将此值设置为true有什么好处?它会加快渲染时间吗?它在后台更有效吗?

基本上,将此属性设置为true会带来什么好处呢?

1 个答案:

答案 0 :(得分:3)

设置标志后,drawable计算一次常量大小,并将其用于有关其大小的所有查询。如果未设置该标志,则每次查询当前drawable的内在宽度。