Android View層次關(guān)系
PhoneWindow-成員DecorView(FrameLayout)包含:LinearLayout ? ?View(StatusBar)
LinearLayout包含:ActionBar(FrameLayout) ContentView(FrameLayout :android.R.id.content)
一 户秤、全屏鹅颊,不保留狀態(tài)欄文字(Splash頁(yè)面,歡迎頁(yè)面)
首先在style.xml中設(shè)置為noActionBar的主題绽慈,這是必須的
style.xml
有三種方式設(shè)置全屏
全屏設(shè)置的方式
二、全屏保留狀態(tài)欄文字(頁(yè)面上部有Banner圖)
現(xiàn)在項(xiàng)目它碎,大部分向下支持到19券敌,所以先不考慮太低版本的情況
設(shè)置透明狀態(tài)欄
三、標(biāo)題欄與狀態(tài)欄顏色一致 xml中配置
狀態(tài)欄顏色設(shè)置style
android版本高于19可以通過(guò)以上就實(shí)現(xiàn)效果卿操,但是對(duì)19版本無(wú)效警检,需要加入代碼如下:
代碼設(shè)置狀態(tài)欄沉浸
獲取狀態(tài)欄高度
四、不同F(xiàn)ragment中對(duì)StatusBar的處理不一樣
用toolbar替換actionbar
toolbar代替actionbar
隱藏系統(tǒng)的statusbar害淤,添加自己設(shè)置的view作為statusbar
添加自定義的statusbar
通過(guò)這些操作扇雕,我們相當(dāng)于把系統(tǒng)的StatusBar,ActionBar窥摄,都干掉了镶奉,那么接下來(lái),我們就可以模擬創(chuàng)建出StatusBaruserContent.addView(mStatusBarView, 0);那么現(xiàn)在我們就可以自己控制statusBar和ActionBar崭放,顯示什么顏色哨苛?消失還是隱藏?
ToolBar顯示的Fragment
toobar顯示
ToolBar隱藏的Fragment
toolbar隱藏
五币砂、設(shè)置狀態(tài)欄文字的顏色
設(shè)置狀態(tài)欄文字顏色方法
設(shè)置狀態(tài)欄文字顏色
除此國(guó)內(nèi)廠商小米建峭、魅族也開(kāi)放了修改狀態(tài)欄字體的方式:
小米 MIUI6
https://dev.mi.com/doc/p=4769/index.html
魅族 Flyme
http://open-wiki.flyme.cn/index.php?title=狀態(tài)欄變色