状态栏图标和Android的版本<文本色调23
状态栏在Android的默认色调是白色的(所以它某种soppos的是状态栏会发暗): I've found我可以在Android的改变色调版本大于或等于23. 但后来我发现我的设备上有几个应用程序(Android 5.1,API 22)使用黑色色调。他们是怎么做到的?状态栏图标和Android的版本<文本色调23
更新: 这就是我的意思是: 一些其他的应用程序具有光状态栏和黑色图标,时间标签等。
这是我的应用程序样本与白色状态栏:
我无法设置windowLightStatusBar
为真,使它看起来像从第一张图片中的应用程序与设备API < 23.
您可以使用此方法在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中的上述代码段视图中。
谢谢你的帮助,但我的意思是文本的颜色,图标,battary时间等。完全不是状态栏的颜色。 –
这很好,但你应该用API> = 23来使用它。 我刚刚在我的设备上发现了几个应用程序(API = 22),它可以使用此功能。 –
setStatusBarColor,而不是23所以他们使用您的手机上。 –
@GabeSechan setStatusBarColor只能设置我的状态栏的颜色,而不是它的图标色调。所以会有白色的状态栏,上面有白色的图标和文字(我现在有这种情况)。 要打开黑色色调,您必须使用windowLightStatusBar(API 23) –
您将不得不显示一些截图,因为按照标准方法afaik所要求的是不可能的。 –