Android View层次关系
PhoneWindow-成员DecorView(FrameLayout)包含:LinearLayout View(StatusBar)
LinearLayout包含:ActionBar(FrameLayout) ContentView(FrameLayout :android.R.id.content)
一 、全屏,不保留状态栏文字(Splash页面,欢迎页面)
首先在style.xml中设置为noActionBar的主题,这是必须的
style.xml有三种方式设置全屏
全屏设置的方式二、全屏保留状态栏文字(页面上部有Banner图)
现在项目,大部分向下支持到19,所以先不考虑太低版本的情况
设置透明状态栏三、标题栏与状态栏颜色一致 xml中配置
状态栏颜色设置style
android版本高于19可以通过以上就实现效果,但是对19版本无效,需要加入代码如下:
代码设置状态栏沉浸 获取状态栏高度四、不同Fragment中对StatusBar的处理不一样
用toolbar替换actionbar
toolbar代替actionbar隐藏系统的statusbar,添加自己设置的view作为statusbar
添加自定义的statusbar通过这些操作,我们相当于把系统的StatusBar,ActionBar,都干掉了,那么接下来,我们就可以模拟创建出StatusBaruserContent.addView(mStatusBarView, 0);那么现在我们就可以自己控制statusBar和ActionBar,显示什么颜色?消失还是隐藏?
ToolBar显示的Fragment
toobar显示ToolBar隐藏的Fragment
toolbar隐藏五、设置状态栏文字的颜色
设置状态栏文字颜色方法
设置状态栏文字颜色除此国内厂商小米、魅族也开放了修改状态栏字体的方式:
小米 MIUI6
https://dev.mi.com/doc/p=4769/index.html
魅族 Flyme
http://open-wiki.flyme.cn/index.php?title=状态栏变色
网友评论