首页 > 代码库 > android 4.4以上能够实现的沉浸式状态栏效果

android 4.4以上能够实现的沉浸式状态栏效果

仅仅有android4.4以及以上的版本号才支持状态栏沉浸效果

先把程序执行在4.4下面的手机上,看下效果:

技术分享技术分享


在4.4以上的效果:

技术分享

技术分享

当然图片也是能够作为背景的.效果:

技术分享

技术分享


代码:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
		    Window window = getWindow();
		    window.setFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS,
		    WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
		}
		requestWindowFeature(Window.FEATURE_NO_TITLE);

仅仅依照当前的代码,尽管已经实现了状态栏的沉浸效果.可是我们的view总体往上平移了

如今仅仅要在我们的布局文件里的顶层布局中增加下面声明就能够了

android:fitsSystemWindows="true"
    android:clipToPadding="true"


我们也能够在程序中动态的改变一下顶层布局的背景颜色,这样我们的状态栏也会改变

<span style="white-space:pre">			</span>localcolor+=20;
			if(localcolor>0xff) {//这里做一个推断,当数值超过255的时候,就设置成255
				localcolor=0xff;
				Log.e("大于255", "设置为255");
			} else {
				Log.e("小于255", "当前颜色为"+localcolor);
			}
			//红 绿 先设置为固定颜色
			rl_all.setBackgroundColor(Color.rgb(0x45, 0xd3, localcolor));



android 4.4以上能够实现的沉浸式状态栏效果