Android Java 切换颜色
Android Java on toggle change color
如何更改我的 styles.xml 中的 color/s,它看起来像这样
<?xml version="1.0" encoding="utf-8"?>
<style name="AppTheme" parent="Theme.AppCompat.Light">
<item name="colorPrimary">#FF9800</item>
<item name="colorButtonNormal">#FF9800</item>
<item name="android:colorPrimaryDark">#FF9800</item>
<item name="android:navigationBarColor">#FF9800</item>
</style>
当我在 activity_main.xml 中切换 ToggleButton 时,看起来像这样
<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" />
到目前为止,我这样做是为了让我的 MainActivity.java
发生这种行为
public void onToggleClicked(View view) {
// check if toggle active
boolean on = ((ToggleButton) view).isChecked();
if (on) {
} else {
}
}
原因是我想为我的应用制作深色和浅色主题:)
不幸的是,主题是不可变的,这意味着您无法在运行时以编程方式更改它们。
也不能简单地设置一个样式。但是,您可以通过扩充新视图来更改样式。您可能会发现 this thread 很有用。
您不能动态更改appTheme。但是有一个解决方法。
看看这个 link。
Android - Change app Theme on onClick
如何更改我的 styles.xml 中的 color/s,它看起来像这样
<?xml version="1.0" encoding="utf-8"?>
<style name="AppTheme" parent="Theme.AppCompat.Light">
<item name="colorPrimary">#FF9800</item>
<item name="colorButtonNormal">#FF9800</item>
<item name="android:colorPrimaryDark">#FF9800</item>
<item name="android:navigationBarColor">#FF9800</item>
</style>
当我在 activity_main.xml 中切换 ToggleButton 时,看起来像这样
<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" />
到目前为止,我这样做是为了让我的 MainActivity.java
发生这种行为 public void onToggleClicked(View view) {
// check if toggle active
boolean on = ((ToggleButton) view).isChecked();
if (on) {
} else {
}
}
原因是我想为我的应用制作深色和浅色主题:)
不幸的是,主题是不可变的,这意味着您无法在运行时以编程方式更改它们。
也不能简单地设置一个样式。但是,您可以通过扩充新视图来更改样式。您可能会发现 this thread 很有用。
您不能动态更改appTheme。但是有一个解决方法。
看看这个 link。
Android - Change app Theme on onClick