重新设计库项目中定义的活动

时间:2014-03-12 15:09:15

标签: android android-activity android-manifest android-theme library-project

我创建了一个由两个活动组成的android-library,这两个活动在库项目的清单中定义,并从同一个库中的其他服务调用。到目前为止它工作得很好,但我不想硬编码活动的设计。相反,使用库项目的 main 应用程序应该能够更改活动的样式,而不必在清单中包含活动。

所以我在库项目中创建了attrs.xml,将所有可重写样式定义为引用。还有一个styles.xml,其中这些属性是使用库项目的默认值预设的。但是当我尝试将库应用程序或活动的主题设置为?attrs / themeRef时,值不会应用于布局。请注意,如果我将活动的主题设置为使用@ style / NameOfTheme的预定义样式,则应用这些值。但是这样我就无法重新定义主应用程序中的样式。

如果我将主应用程序的主题设置为@NameOfTheme,它也不起作用。

经过两天的各种组合,我无法让它发挥作用。所以问题是:它甚至可能吗?如果没有,为什么?

1 个答案:

答案 0 :(得分:0)

在主应用程序中创建一个主题,该主题具有来自库的主题。 然后覆盖新主应用程序主题中的属性值。

ActionBarSherlock的样式示例http://actionbarsherlock.com/theming.html是如何实现此目的的绝佳参考。