我想在按钮点击(包括工具栏颜色,背景颜色和字体)上更改我的应用程序的整个主题。任何人都可以建议如何以编程方式执行此操作吗?
答案 0 :(得分:0)
是的,你可以做到这一点,它的精湛之处:我最近做到了 你只需要知道android的settheme()方法:
所以让我先描述整个场景: 首先,您需要在style.xml中添加不同主题
2>现在在共享偏好中添加并映射这些主题,如下所示:
SharedPreferences pref = PreferenceManager
.getDefaultSharedPreferences(this);
String themeName = pref.getString("prefSyncFrequency3", "Theme1");
if (themeName.equals("Africa")) {
setTheme(R.style.AppTheme);
} else if (themeName.equals("Colorful Beach")) {
//Toast.makeText(this, "set theme", Toast.LENGTH_SHORT).show();
setTheme(R.style.beach);
} else if (themeName.equals("Abstract")) {
//Toast.makeText(this, "set theme", Toast.LENGTH_SHORT).show();
setTheme(R.style.abstract2);
} else if(themeName.equals(“Default”)){
setTheme(R.style.defaulttheme);
}
现在点击你可以有条件状态,你可以从共享的主题获得主题:
有关详细信息,请参阅此链接
让我知道它是否有帮助:)