从我阅读elsewhere开始,当您将包含项目的命名空间更改为:xmlns:si =“http://schemas.android时,自定义属性的编译器错误”找不到资源标识符“消失了.com / apk / lib /com.my.base.project“而不是”xmlns:si =“http://schemas.android.com/apk/ res /com.my.base.project“
这仍然无法解决实际读取自定义属性值的问题。从非项目环境。该控件只获取默认值。有任何想法让这个工作吗?
在我的应用程序中,我在布局XML文件中使用此自定义属性:
<merge xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:si="http://schemas.android.com/apk/lib/com.my.base.project">
<com.my.base.project.view.CustomView
si:collapsedHeight="100dp">
</com.my.base.project.view.CustomView>
</merge>
答案 0 :(得分:11)
添加了对库中自定义属性的自定义视图的支持。 使用自定义属性的布局必须使用命名空间URI http://schemas.android.com/apk/res-auto而不是URI 包括应用包名称。此URI将替换为应用程序 特定的一个在建设时。
他们使用SDK工具修订版17(2012年3月)将其标记为“已发布”。