Android资源ID
我从自定义的XML视图types检索自定义资源ID。 我被要求为检索指定一个默认的int值,并想知道什么是范围的ID? 他们总是积极的还是包括零?
即-1是一个有效的“空”参考AND / OR是0一个有效的“空”参考?
谢谢
编辑
自定义XML资源/属性文件
<resources> <declare-styleable name="ToggleImageButton"> <attr name="onImage" format="integer" /> <attr name="offImage" format="integer" /> </declare-styleable> </resources>
在我的自定义UI的构造函数中定义
TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.ToggleImageButton); int offResource = a.getInt(R.styleable.ToggleImageButton_offImage, -1);
基本上,第二行末尾的-1是这个数据types的默认参数。 它在开发时可能会或可能不会在XML视图中初始化,并允许以这种方式指定默认行为。
根据文档, Resources.getIdentifier()
如果没有find这样的资源,则返回0。 (0不是有效的资源ID。)
所以你可以使用0。
0是资源ID的空值/无效值。