gpt4 book ai didi

android - 我可以将我的 Android 样式放在不同的包名称中吗?

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:13:11 28 4
gpt4 key购买 nike

例如,我引用 android 样式...

@android:style/... 

和我自己的应用程序样式......

@style/...

但是我怎样才能将我的样式分离到其他名称包中呢?例如

@somePackage:style/...

最佳答案

不幸的是你不能。您可能认为 Android 库可能会帮助您,但事实并非如此。这是因为在编译资源时,Android 库会“物理地”合并到主应用程序中。

因此,从 aapt 的角度来看,您的应用程序资源与任何其他 Android 库资源没有区别。更重要的是,aapt 接收多个资源目录作为输入(即应用程序的 res 路径,以及来自引用 Android 库的所有 res 目录的路径) ,但同时只有来自应用程序的单个 AndroidManifest.xml 作为这些资源的“所有者”传递。

我想说的是,即使您可以在逻辑上将资源(例如样式)分组到单独的 Android 库中,您仍然不能使用这些 Android 库的包名来引用它们。仅使用主应用程序的包名称。


例如,您有包名称为 com.test.app 的应用程序和包名称为 com.test.lib 的 Android 库。库中包含样式 testStyle

以下方法不起作用(理论上没有任何方法可以帮助您解决此问题):

<TextView style="@com.test.lib:style/testStyle" .../>

虽然这工作正常:

<TextView style="@com.test.app:style/testStyle" .../>

关于android - 我可以将我的 Android 样式放在不同的包名称中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6994656/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com