修改状态栏颜色 StatusBar
molue的build.gradle
1.
<
style
name=
"customTheme"
parent=
"AppTheme">
< item name= "windowActionBar">false</ item>
< item name= "windowNoTitle">true</ item>
<item name="android:statusBarColor">#88cf0e27</item>
</ style>
< item name= "windowActionBar">false</ item>
< item name= "windowNoTitle">true</ item>
<item name="android:statusBarColor">#88cf0e27</item>
</ style>
或者
<
style
name=
"AppTheme"
parent=
"Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
< item name= "colorPrimary">@color/colorPrimary</ item>
< item name= "colorPrimaryDark">#ff0000</ item>//statusbar状态栏背景颜色
< item name= "colorAccent">@color/colorAccent</ item>
</ style>
<!-- Customize your theme here. -->
< item name= "colorPrimary">@color/colorPrimary</ item>
< item name= "colorPrimaryDark">#ff0000</ item>//statusbar状态栏背景颜色
< item name= "colorAccent">@color/colorAccent</ item>
</ style>
2.
compile 'com.github.niorgai:StatusBarCompat:2.1.1'
工程的Build.gradle中
allprojects {
repositories {
jcenter()
maven { url "https://jitpack.io"}//这个也要加上
}
repositories {
jcenter()
maven { url "https://jitpack.io"}//这个也要加上
}
}
代码
//set color for status bar
StatusBarCompat. setStatusBarColor( this,getResources().getColor(R.color. bar));
StatusBarCompat. setStatusBarColor( this,getResources().getColor(R.color. bar));
setContentView(R.layout.activity_main);
style.XML文件中
<resources>
<
color
name=
"bar">#00ff00</
color>
</resources>
holder.
tv_name.setTextColor(Color.
parseColor(
"#323437"));
更多API
//set color for status bar
StatusBarCompat.setStatusBarColor(Activity activity, int color)
//add alpha to color
StatusBarCompat.setStatusBarColor(Activity activity, int statusColor, int alpha)
//translucent status bar
StatusBarCompat.translucentStatusBar(activity);
//should hide status bar background (default black background) when SDK >= 21
StatusBarCompat.translucentStatusBar(Activity activity, boolean hideStatusBarBackground);
//set color for CollapsingToolbarLayout
setStatusBarColorForCollapsingToolbar(Activity activity, AppBarLayout appBarLayout, CollapsingToolbarLayout collapsingToolbarLayout,
StatusBarCompat.setStatusBarColor(Activity activity, int color)
//add alpha to color
StatusBarCompat.setStatusBarColor(Activity activity, int statusColor, int alpha)
//translucent status bar
StatusBarCompat.translucentStatusBar(activity);
//should hide status bar background (default black background) when SDK >= 21
StatusBarCompat.translucentStatusBar(Activity activity, boolean hideStatusBarBackground);
//set color for CollapsingToolbarLayout
setStatusBarColorForCollapsingToolbar(Activity activity, AppBarLayout appBarLayout, CollapsingToolbarLayout collapsingToolbarLayout,
Toolbar toolbar, int statusColor)
3.
使其变透明 下面的控件可以填充
if(Build.VERSION.
SDK_INT >= Build.VERSION_CODES.
KITKAT) {
// 透明状态栏
getWindow().addFlags(WindowManager.LayoutParams. FLAG_TRANSLUCENT_STATUS);
// 透明导航栏
// getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
}
// 透明状态栏
getWindow().addFlags(WindowManager.LayoutParams. FLAG_TRANSLUCENT_STATUS);
// 透明导航栏
// getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
}