Android常用代码-切换主题

  1. 1. 核心代码
  2. 2. 使用方式

核心代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
private void setThemeColor(int colorPrimary, int colorPrimaryDark) {
mToolbar.setBackgroundResource(colorPrimary);
mToolbar.setTitleTextColor(ContextCompat.getColor(this, android.R.color.white));
mToolbar.setNavigationIcon(R.drawable.ic_arrow_back_white_24dp);
if (Build.VERSION.SDK_INT >= 21) {
getWindow().setStatusBarColor(ContextCompat.getColor(this, colorPrimaryDark));
}
if (Build.VERSION.SDK_INT >= 23) {
Window window = getWindow();
int systemUiVisibility = window.getDecorView().getSystemUiVisibility();
systemUiVisibility &= ~View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
window.getDecorView().setSystemUiVisibility(systemUiVisibility);
}
}

使用方式

1
setThemeColor(R.color.colorPrimary, R.color.colorPrimaryDark);