Android Java开启切换更改颜色

Android Java开启切换更改颜色,java,android,xml,colors,toggle,Java,Android,Xml,Colors,Toggle,如何更改my styles.xml中的颜色(如下所示) <?xml version="1.0" encoding="utf-8"?> <ToggleButton android:id="@+id/togglebutton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textOn="Light Theme" an

如何更改my styles.xml中的颜色(如下所示)

<?xml version="1.0" encoding="utf-8"?>
    <ToggleButton
    android:id="@+id/togglebutton"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textOn="Light Theme"
    android:textOff="Dark Theme"
    android:onClick="onToggleClicked"
    android:layout_above="@+id/button"
    android:layout_centerHorizontal="true" />

原因是我想为我的应用程序创建一个暗主题和一个亮主题:)

不幸的是,主题是不可变的,这意味着你不能在运行时通过编程更改它们


你也不能简单地设定一种风格。但是,可以通过展开新视图来更改样式。你会发现这很有用

无法动态更改appTheme。但有一个解决办法

查看此链接

    <ToggleButton
    android:id="@+id/togglebutton"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textOn="Light Theme"
    android:textOff="Dark Theme"
    android:onClick="onToggleClicked"
    android:layout_above="@+id/button"
    android:layout_centerHorizontal="true" />
    public void onToggleClicked(View view) {
    // check if toggle active
    boolean on = ((ToggleButton) view).isChecked();

    if (on) {

    } else {

    }
}