【发布时间】:2012-12-25 22:33:33
【问题描述】:
我想在Java中更改整个应用程序的text和background 颜色,可以吗?有了这个,我的意思是改变应用程序中每个项目的颜色(TextViews, ListView项目,一切)。
这可能吗?
我尝试过使用定制样式,但无法使用。这是xml文件(放在res/layout/values文件夹中):
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="Light">
<item name="android:textColor">#00FF00</item>
</style>
</resources>
假设我现在只想更改文本颜色。
现在我在我的应用程序中这样称呼这种风格:
public void onCreate(Bundle icicle) {
Activity.setTheme(android.R.style.light);
super.onCreate(icicle);
setContentView(R.layout.main);
但我收到错误 light cannot be resolved or is not a field。
更新:
我发现以编程方式执行此操作的一种方法是重新启动活动,调用
this.setTheme(R.style.Light);
onCreate(null);
但是,这仅适用于当前活动,不适用于整个应用程序。如果能够启动另一个活动,而不仅仅是当前活动,那就太好了。
【问题讨论】:
-
您是否尝试设置
Theme的应用程序? -
@ChintanRathod 是的,但我在这样做时遇到了一些问题,所以我正在寻找另一种解决方案
-
您最好调整您的问题以解决您在通过样式/主题尝试时遇到的问题。
-
@StefandeBruijn 完成,我已经更新了我的问题
-
Activity.setTheme(android.R.style.light); i 而不是这一行,试试这个:: this.setTheme(R.style.Light)
标签: android android-layout background-color