我想定义一种 android 样式,该样式扩展在未作为库导入的不同应用程序/包中定义的样式。
从这里对 android 资源的 xml 引用的定义:
@[<package_name>:]<resource_type>/<resource_name>
似乎可以指定一个外部定义资源的位置(用于引用系统资源@android:string/name)
现在,我有我的主应用程序(包:com.example.test),它定义了一个属性和一个主题,如下所示:
<declare-styleable name="TestAttrs">
<attr name="testColor" format="color" />
</declare-styleable>
<style name="TestTheme" parent="@android:style/Theme">
<item name="testColor">#FFFF0000</item>
</style>
如果在一秒钟内,不同的应用程序我尝试使用以前的包来使用上面显示的语法定义样式,我会收到一条错误消息,指出找不到资源。
<style name="SubTheme" parent="@com.example.test:style/TestTheme">
<item name="com.example.test:testColor">#FF00FF00</item>
</style>
是否可以告诉编译器在哪里寻找包?
我必须将我的初始样式/属性定义为共享吗?