改變狀態列的顏色使其與APP風格一體化

2021-09-05 09:59:14 字數 869 閱讀 1699

1、新增布局屬性

首先要在布局檔案中加入下面兩個屬性:

android:cliptopadding="true"

android:fitssystemwindows="true"

解釋一下上面兩個布局屬性的意思:

android:cliptopadding 定義布局間是否有間距

android:fitssystemwindows="true" 意思就是設定應用布局時是否考慮系統視窗布局;如果為true,將調整系統視窗布局以適應你自定義的布局。比如系統有狀態列,應用也有狀態列時。看你這個布局**,恰恰是在定義標題欄樣式,所以用到這行**了。

2在activity中應用一下方法

public static void initsystembar(activity activity) 

systembartintmanager tintmanager = new systembartintmanager(activity);

tintmanager.setstatusbartintenabled(true);

// 使用顏色資源

tintmanager.setstatusbartintresource(r.color.status_color);

}@targetapi(19)

private static void settranslucentstatus(activity activity, boolean on) else

win.setattributes(winparams);

}

改變狀態列顏色

window window getwindow 取消設定透明狀態列,使contentview內容不再覆蓋狀態列 window.clearflags windowmanager.layoutparams.flag translucent status 需要設定這個flag才能呼叫setstatusba...

改變狀態列的顏色

android改變狀態列的顏色我是引用第三方的做法 在baseactivity中 use sytembartintmanager android沉浸式狀態列systembartint的使用方法 param tintdrawable 自定義傳入的 protected void setsystembar...

Android 改變頂部狀態列的顏色

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