带有自定义视图ID的Android API

时间:2014-08-20 02:42:37

标签: android xml

对于内置Android ListView之类的内容,您可以通过执行android:id="@android:id/text1"

来引用XML中的ID

假设我有一个名为MyDomain的外部库,其中有一些有用的布局API。

在我的主应用中,我想做android:id="@mydomain:id/someTextId"

之类的事情

我该如何做到这一点?

我正在使用Android Studio版本0.8.6测试版(暂时)将库作为模块,如果它有任何区别

2 个答案:

答案 0 :(得分:2)

在这篇文章How to reference a string from another package in a library using XML in Android?中有一个很好的解释,说明“包”的含义以及为什么你不能这样使用它,除非你使用共享库

答案 1 :(得分:1)

我不确定你究竟想做什么......

您可以与应用分享图书馆的组件。应用程序的布局将是这样的:

<com.my.domain.MyComponent
  xmlns:android="http://schemas.android.com/apk/res/android"
  ...
/>

您还可以通过添加XML命名空间直接在布局中定义组件的自定义属性,例如:

xmlns:md="http://schemas.android.com/apk/res/com.my.domain.MyComponent"

然后你可以使用像md:my_property="42"这样的属性。

同时查看以下答案:How can I set up custom namespaces in layout file in Android studio?