這是一個為Android App 設(shè)置狀態(tài)欄的工具類危号, 可以在4.4及其以上系統(tǒng)中實現(xiàn) 沉浸式狀態(tài)欄/狀態(tài)欄變色,支持設(shè)置狀態(tài)欄透明度
設(shè)置狀態(tài)欄顏色
StatusBarUtil.setColor(Activityactivity,intcolor)
設(shè)置狀態(tài)欄半透明
StatusBarUtil.setTranslucent(Activityactivity,intstatusBarAlpha)
? ?
設(shè)置狀態(tài)欄全透明
StatusBarUtil.setTransparent(Activityactivity)
為包含DrawerLayout的界面設(shè)置狀態(tài)欄顏色(也可以設(shè)置半透明和全透明)
StatusBarUtil.setColorForDrawerLayout(Activityactivity,DrawerLayoutdrawerLayout,intcolor)
為使用 ImageView 作為頭部的界面設(shè)置狀態(tài)欄透明
StatusBarUtil.setTranslucentForImageView(Activityactivity,intstatusBarAlpha,ViewneedOffsetView)
在 Fragment 中使用
為滑動返回界面設(shè)置狀態(tài)欄顏色
推薦配合bingoogolapple/BGASwipeBackLayout-Android: Android Activity 滑動返回這個庫一起使用箱玷。
StatusBarUtil.setColorForSwipeBack(Activityactivity,@ColorIntintcolor,intstatusBarAlpha)
通過傳入statusBarAlpha參數(shù),可以改變狀態(tài)欄的透明度值,默認值是112糜颠。
在 build.gradle 文件中添加依賴, StatusBarUtil 已經(jīng)發(fā)布在 JCenter:
compile'com.jaeger.statusbarutil:library:1.4.0'
在setContentView()之后調(diào)用你需要的方法耕拷,例如:
setContentView(R.layout.main_activity);...StatusBarUtil.setColor(MainActivity.this,mColor);
如果你在一個包含DrawerLayout的界面中使用, 你需要在布局文件中為DrawerLayout添加android:fitsSystemWindows="true"屬性:
...
滑動返回界面設(shè)置狀態(tài)欄顏色:
建議配合bingoogolapple/BGASwipeBackLayout-Android: Android Activity 滑動返回庫一起使用讼昆。
StatusBarUtil.setColorForSwipeBack(Activityactivity,@ColorIntintcolor,intstatusBarAlpha)
當你設(shè)置了statusBarAlpha值時,該值需要在 0 ~ 255 之間
在 Fragment 中的使用可以參照UseInFragmentActivity.java來實現(xiàn)