第一步:

首先得让你的activity的布局文件的根布局有android:fitsSystemWindows="true"该属性,它指定了状态栏占有一定的位子.

第二步:

在你的activity的onCreate方法中调用该方法:

@TargetApi(19)private void initWindow() {    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {        getWindow().addFlags(                    WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);        getWindow().addFlags(                    WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);        ViewGroup decorView = (ViewGroup) getWindow().getDecorView();        View mStatusBarTintView = new View(this);        LayoutParams params = new LayoutParams(LayoutParams.MATCH_PARENT, getStatusBarHeight());        params.gravity = Gravity.TOP;        mStatusBarTintView.setLayoutParams(params);           mStatusBarTintView.setBackgroundColor(getResources().getColor(DEFAULT_TINT_COLOR));        mStatusBarTintView.setVisibility(View.VISIBLE);        decorView.addView(mStatusBarTintView);    }}
protected int getStatusBarHeight(){      Class<?> c = null;    Object obj = null;    Field field = null;    int x = 0, sbar = 38;//默认为38,貌似大部分是这样的    try {          c = Class.forName("com.android.internal.R$dimen");          obj = c.newInstance();          field = c.getField("status_bar_height");          x = Integer.parseInt(field.get(obj).toString());          sbar = getResources().getDimensionPixelSize(x);     } catch (Exception e1) {          e1.printStackTrace();     }     return sbar;}

这里获取状态栏的获取就不说了,上一篇文章已经说过了关于如何获取android状态栏高度,上面的DEFAULT_TINT_COLOR就是你要指定的状态栏颜色值,我这里设置的颜色值跟toolbar的颜色一样。

更多相关文章

  1. android沉浸式状态栏的适配(包含刘海屏)
  2. Android(安卓)疯狂造轮子 常用工具类 直接拿来用!
  3. 【Android(安卓)初学】6、线性布局--深入LinearLayout
  4. 使用字符串获取与该字符串同名的变量值
  5. Android高性能的布局
  6. Android判断服务是否运行及定位问题实例分析
  7. 一个android颜色识别器
  8. Qt 打开安卓相册选择图片并获取图片的本地路径
  9. android 获取字符串的高度和宽度

随机推荐

  1. UIAutomator遇到的坑
  2. 五、Fresco——ScaleType focusCrop属性
  3. android 显示电池电量
  4. 终极报错解决方案:Error:Execution failed
  5. Android获取手机SIM卡运营商信息的方法
  6. Android的showDialog()、onPrepareDialog
  7. Android(安卓)设备侧usb驱动开发
  8. android实现倒计时功能的方法
  9. Android(安卓)Gradle 插件版本说明 以及
  10. android跟服务器使用json传递数据