在我的程序中,我必须以编程方式切换应用程序主题。也就是说,可以选择切换浅色和深色主题。最佳做法是什么?我可以创建和管理样式集吗?例如,我有这个文本视图和按钮。
<Button
android:id="@+id/btn"
style="@style/BT_list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/OK" />
<TextView
android:id="@+id/tv"
style="@style/TText"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="@string/msg" />
我有这种风格:
<style name="BT_list">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">30dp</item>
<item name="android:textColor">@color/green_color</item>
<item name="android:gravity">center</item>
<item name="android:paddingLeft">0dp</item>
<item name="android:paddingRight">0dp</item>
<item name="android:layout_marginLeft">0dp</item>
<item name="android:layout_marginRight">0dp</item>
<item name="android:textSize">15sp</item>
<item name="android:textStyle">bold</item>
<item name="android:background">@drawable/grad</item>
</style>
<style name="TText">
<item name="android:textColor">@color/text_color</item>
<item name="android:background">@color/white"</item>
</style>
如何以setTheme();
编程方式为两种(可能更多)样式更改值?