android應用頂部狀態列學習筆記

2021-08-01 10:41:17 字數 1327 閱讀 4786

看了一些關於應用頂部狀態列的文章,在此記錄一下

一,修改狀態列的情況有哪些

在android開發中,有時候我們需要對應用開啟時手機頂部的狀態列進行一些效果上的改變,比如:改變其背景顏色,使其與應用主色調相同或者不突兀;使狀態列背景色透明,同時使應用的contentview延伸到狀態列下面。

上面這些需求在android4.4之後好像才可以,在android原生系統6.0+,或者miui6+,flyme4+等定製系統才支援狀態列字型修改的。

在values/theme.xml中

@color/colorprimary

@color/colorprimarydark

@color/coloraccent

在v19/theme.xml中

true

這樣的話整個應用的介面就會上移,狀態列透明。

不過好像對於5.0+的系統以上設定的結果可能不是透明的。我手頭有兩部手機,一部小公尺5(7.0系統),一部聯想手機(4.4系統),以上設定均可實現介面上移,狀態列透明。(這個後面會附上其它好文)

二,專案中開發

上一家公司開發專案時,設計圖上是頂部的狀態列的顏色和應用頭部背景色一致,使用者中心的頂部又要上移到狀態列下方。即前面見到的兩張。當時想了很久,水平不夠,有些東西理解不到。最後只實現了第一張圖,未實現第二張圖。這周週末想了想覺得沒有解決掉總是不好的,所以看了看一些文章,寫了個demo解決下。

**實現:

思路:繼承乙個布局,比如linearlayout,當系統版本是4.4及以上時,設定padding值中的toppadding值為 getpaddingtop() + systembarutils.getstatusbarheight(getcontext());

**:

private void setinit() 

}

mainactivity的根布局使用的是linearlayout,而上面的這個重寫的布局是作為裡面的前四個個fragment的布局檔案的根布局,usercenterfragment的根布局也是使用的linearlayout。

三,上面只是乙個學習筆記,水平有限。開發中我們有時也許還要修改狀態列字型顏色。可以參考下一下文章。

anroid沉浸式狀態列

android狀態列微技巧,帶你真正理解沉浸式模式

android系統更改狀態列字型顏色

android 頂部狀態列遮蓋

因為專案需求要做乙個打 時頂部的遮蓋 然後就去弄了這個 關鍵部分就是視窗的屬性 mparams.type windowmanager.layoutparams.type system error mparams.flags windowmanager.layoutparams.flag not fo...

Android 改變頂部狀態列的顏色

版本4.4 1.在style.xml中新增 name android windowtranslucentstatus tools targetapi kitkat true item 2.改變狀態列顏色 在要適配的activity 比如activity main.xml 裡修改根layout 最底層...

ios 隱藏頂部狀態列

ios6和 ios7在隱藏 status bar 三種方式比較 storyboard 介面上選中uiviewcontroller,最右邊simulated metrics找到 status bar 設定成 none 實現prefersstatusbarhidden方法,返回 yes bool pre...