Android studio多项目风格问题

时间:2015-07-21 14:24:28

标签: android eclipse maven android-studio gradle

我有一个Android项目使用另一个作为库。到目前为止,我一直在与Maven合作开发Eclipse,现在我想迁移到Android Studio和Gradle。 问题是我用它在Eclipse中执行以下操作:

图书馆项目:

<style name="some_theme">
    <item name="android:textColor">#00FF00</item>
</style>

然后在我的主要项目中:

<style name="some_theme">
    <item name="android:typeface">monospace</item>
</style>

所以,如果主题名在Eclipse中是相同的,我会在两个主题中定义,但在Android工作室我只得到主项目的内容

以前是否有人遇到此类问题?有人知道解决方法吗? (除了复制库项目中的所有内容之外......)

此致

1 个答案:

答案 0 :(得分:-1)

那不应该工作。在两个不同的位置定义两个具有相同名称的样式时,应该遇到命名冲突。没有记录的样式资源合并功能。它在Eclipse中与ADT一起工作的事实可能是偶然的。

正确的方法是在库中定义一种样式,并在应用程序中继承该样式。

例如,在您的图书馆项目中:

<style name="SomeThemeBase">
    <item name="android:textColor">#00FF00</item>
</style>

然后在您的应用程序项目中:

<style name="AppTheme" parent="SomeThemeBase">
    <item name="android:typeface">monospace</item>
</style>

这样您就不会创建命名冲突,但您的应用主题仍会继承您在基本主题上定义的属性。