我有一个应用程序,用户可以从一个PreferenceActivity中选择几个不同颜色的主题,从而改变整个应用程序的主题/颜色。但是,在PreferenceActivity中选择的更改不会立即应用。这些更改仅在用户重新进入 PreferenceActivity时应用。
我知道每次选择主题时都可以调用recreate(),但我想知道是否存在更好的解决方案,而不需要重新创建整个活动。
这里是一个关于它当前工作方式的视频:
--这是我在preferenceList中设置的PreferenceActivity:中选择的值
@Override
public void onCreate(Bundle s
我试图设置一个像对话框一样的活动,这是我的代码:
public class TetsDialog extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
requestWindowFeature(Window.FEATURE_NO_TITLE);
this.setTheme(android.R.style.Theme_Dialog);
super.onCreate(savedInstanceState);
se
当从后台或屏幕方向改变时,应用程序会恢复主题,但当我更改中间按钮以查看正在运行的后台应用程序列表并从中清除它时,它将无法工作。
这是我的themechanger class的代码
package com.example.calculator;
import android.content.Intent;
import android.support.v7.app.ActionBarActivity;
public class ThemeChanger
{
private static int sTheme;
public final static int THEME_D
我发现了很多动态改变活动主题的方法。
但我使用了一些来自aChartengine的图表,它们不能改变它们的主题,因为它们不只是活动。
所以,我需要找到一种动态改变应用程序主题的方法,这样我的图表主题也会改变!
我想知道是否有人能解决这个问题。
这是我的代码,它对每个活动都有效:
public class Utils
{
private static int sTheme;
public final static int THEME_DEFAULT = 0;
public final static int THEME_WHITE = 1;
public fina
我有一个扩展ActionBarActivity的活动(扩展到能够在我的listFragment中显示actionbar )。我试图在我的活动的setTheme()方法中使用这样的OnCreate()设置主题:
setTheme(R.style.AppTheme);
setContentView(R.layout.holder);
但是,我收到以下错误消息:
java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.
实际上,我使用的作为s
我有一个设置PreferenceFragment,允许用户选择一个主题。用户可以选择一个黑暗或光明的主题。选择主题后,用户按后退按钮返回到前一个片段。这就调用了包含活动的onCreate方法,其中主题被读取和应用。但是主题应用不正确,从Holo.Light切换到Holo.Dark会改变背景颜色、动作栏等,但不会改变文本,导致文本褪色,难以阅读。你知道我做错了什么吗?我所读到的所有东西都说主题应该应用到onCreate方法中,这就是我正在做的事情。
提前谢谢你的帮助。
编辑
按照要求,这里是相关的代码。
public class MainActivity extends Activity {