Android:应用程序和 Activity 主题在将 AAR 库添加到项目后停止工作
Android: Application and Activity themes stop working after addition of AAR library to the project
我在清单中为整个应用程序定义了一个默认主题:
<application
android:name="com.my.app"
android:allowBackup="false"
android:theme="@style/AppTheme">
一切都按预期进行,直到我将新的 AAR 库添加到项目中。在这一点之后,我的主题设置将被忽略,无论我是在 Application
标签中定义它,还是为每个单独的 Activity
.
在我的应用程序中,我在 res/values
路径下只有一个 styles.xml
实例(其中定义了 AppTheme)。另一方面,AAR 库在以下位置定义了相同的主题:res/values/values.xml
、res/values-land/values-land.xml
、res/values-sw600dp-v13/values-sw600dp-v13.xml
.
所以,我想我的问题是如何防止库模块的主题覆盖我自己的主题?
AppTheme 是主题的通用名称,很可能库也在使用相同的主题名称,更改主题名称应该可以解决问题。
或者您也可以在清单中添加 tools:replace="android:theme"
。
我在清单中为整个应用程序定义了一个默认主题:
<application
android:name="com.my.app"
android:allowBackup="false"
android:theme="@style/AppTheme">
一切都按预期进行,直到我将新的 AAR 库添加到项目中。在这一点之后,我的主题设置将被忽略,无论我是在 Application
标签中定义它,还是为每个单独的 Activity
.
在我的应用程序中,我在 res/values
路径下只有一个 styles.xml
实例(其中定义了 AppTheme)。另一方面,AAR 库在以下位置定义了相同的主题:res/values/values.xml
、res/values-land/values-land.xml
、res/values-sw600dp-v13/values-sw600dp-v13.xml
.
所以,我想我的问题是如何防止库模块的主题覆盖我自己的主题?
AppTheme 是主题的通用名称,很可能库也在使用相同的主题名称,更改主题名称应该可以解决问题。
或者您也可以在清单中添加 tools:replace="android:theme"
。