我有一个自定义视图(扩展视图组),并且我指定了一些在attrs.xml中定义的自定义属性....
<declare-styleable name="datascope">
<attr name="colcount" format="integer" />
<attr name="titleheaderrows" format="integer" />
<attr name="colheaderrows" format="integer" />
<attr name="rowlayout" format="reference" />
</declare-styleable>
我可以很好地拾取整数,但最后一个rowlayout
- 我想用来引用另一个布局文件,我将根据需要进行扩展。但我找不到在主布局文件中表达 rowlayout 属性的正确方法。我努力了:
lui:rowlayout="@layout/sensorvaluesdata">
但这在运行时失败:
E/AndroidRuntime(22092):原因:java.lang.NumberFormatException:无法将“res/layout/sensorvaluesdata.xml”解析为整数
和
lui:rowlayout="?layout/sensorvaluesdata"
失败了
E/AndroidRuntime(22341):原因:java.lang.NumberFormatException:无法将“?2130903043”解析为整数
这很有趣,因为它似乎将资源 ID 卡在其中,但也将 a 卡?
在了前面。
我的R.java文件确实有一个合理的sensorvaluesdata
.
public static final class layout {
public static final int sensorvaluesdata=0x7f030003;
}
这样做的正确方法是什么?
(我可以将信息硬编码到java源代码中,它工作正常......
View vx = li.inflate(R.layout.sensorvaluesdata, this, false);