大家讲道理2017-04-18 09:09:53
還是推薦一篇文章吧,詳細介紹了狀態列。不是所有的安卓系統都可以修改狀態欄成白底黑字的,得看系統是否提供API,Android本身是不支援這樣的操作的,國內的安卓系統經過定制,有的開放了接口,比如小米和魅族。
Android狀態列操作,你想知道的都在這裡
PHP中文网2017-04-18 09:09:53
小米和魅族有公開的方法可以設定狀態列字體顏色。
public static boolean setMiuiStatusBarDarkMode(Activity activity, boolean darkmode) {
Class<? extends Window> clazz = activity.getWindow().getClass();
try {
int darkModeFlag;
Class<?> layoutParams = Class.forName("android.view.MiuiWindowManager$LayoutParams");
Field field = layoutParams.getField("EXTRA_FLAG_STATUS_BAR_DARK_MODE");
darkModeFlag = field.getInt(layoutParams);
Method extraFlagField = clazz.getMethod("setExtraFlags", int.class, int.class);
extraFlagField.invoke(activity.getWindow(), darkmode ? darkModeFlag : 0, darkModeFlag);
return true;
} catch (Exception e) {
e.printStackTrace();
}
return false;
}
魅族的,呃呃,網路找找吧,我記得我以前有的,一時找不到了。
PS:android 6.0好像也可以。