从另一个android项目导入的自定义属性

时间:2012-03-05 15:37:11

标签: android attributes

从我阅读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>

1 个答案:

答案 0 :(得分:11)

来自release notes

  

添加了对库中自定义属性的自定义视图的支持。   使用自定义属性的布局必须使用命名空间URI   http://schemas.android.com/apk/res-auto而不是URI   包括应用包名称。此URI将替换为应用程序   特定的一个在建设时。

他们使用SDK工具修订版17(2012年3月)将其标记为“已发布”。