如何同时更改多个活动的背景?

时间:2011-07-14 21:03:52

标签: android

我正在开发一个包含3个活动的应用。每项活动都有相同的背景。我想让用户能够更改所有三个活动的背景。所以我使用AlertDialog为用户提供了多种选择。当用户单击“对话框”上的项目时,背景将会更改。

我尝试了两种方法来实现上述功能:

1)在AndroidManifest.XML中使用Android:theme。这确实有效。但糟糕的是,应用程序中的所有View都将扩展主题。我将无关视图的背景视为null。但我无法删除Dialog中的扩展主题。这使我的对话非常难看。

2)我在三个活动的布局xml中应用了'style'。但问题是我无法以编程方式修改样式中的背景属性。

有人有想法处理这个问题吗?谢谢!

1 个答案:

答案 0 :(得分:1)

有两种选择,但我可以想到这两种选择:

  1. 创建自定义对话框并覆盖设置主题以取消更改新主题的方法。

  2. 在显示所选背景图像的应用程序首选项中保留首选项,然后在活动开始时设置每个活动的主要布局视图的背景。