您可以使用此方法在kitkat和棒棒糖及以上設備中給出statusBar自己的顏色
public void translucentStatusBar() {
if(Build.VERSION.SDK_INT == Build.VERSION_CODES.KITKAT) {
getWindow().setFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS,
WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
} else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN);
getWindow().setStatusBarColor(Color.TRANSPARENT);
}
View view = findViewById(R.id.vFakeStatusBar);
view.setLayoutParams(new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,
(int) getResources().getDimension(R.dimen.default_status_bar_height)));
}
在高度24dp(默認)的statusBar中的上述代碼段視圖中。
setStatusBarColor,而不是23所以他們使用您的手機上。 –
@GabeSechan setStatusBarColor只能設置我的狀態欄的顏色,而不是它的圖標色調。所以會有白色的狀態欄,上面有白色的圖標和文字(我現在有這種情況)。 要打開黑色色調,您必須使用windowLightStatusBar(API 23) –
您將不得不顯示一些截圖,因爲按照標準方法afaik所要求的是不可能的。 –