如何在一个按钮上将主题设置为黑暗

时间:2017-09-13 11:40:09

标签: java android xml material-design toolbar

来自ThemeUtils的人可以用一个按钮设置主题吗?只看一个按钮'反转'来设置Light to Dark和Dark to Light?如果可能的话怎么做?请帮助我

我的代码:

case R.id.Invert:
            ThemeUtils.setTheme(this, "dark");
            return true;

看这张图片:https://drive.google.com/file/d/0B5SpWSpauPDuSGtWREgybnB6aEk/view?usp=drivesdk

2 个答案:

答案 0 :(得分:0)

在调用setTheme

之前,您必须在Activity上调用SetContentView方法

因此,要更改已经打开的Activity的主题,您需要重新启动它。

例如:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setTheme(YOUR_THEME_FROM_SHARED_PREFS);
    setContentView(...)
}

case R.id.Invert:
            // Set theme in shared Prefs here

            this.recreate(); // restart the activity
            return true;

答案 1 :(得分:0)

是的,当然。定义主题,您要在style文件夹中进行设置。而不是你的字符串写代码R.style.YourOwnTheme