Android 状态栏和actionbar的颜色设置

1 前言

一般我们在Android的APP开发中,APP的界面如下: 

设置actionbar的颜色:

配置文件AndroidManifest.xml 中设置没有actionbar的布局

        <activity android:name=".view.DetailActivity"  android:theme="@style/Theme.AppCompat.Light.NoActionBar"/>

使用Toolbar来替换actionbar

炫酷的效果:

布局示意图:

使用控件CollapsingToolbarLayout:  具体使用可以参考这篇文章

CoordinatorLayout配合AppBarLayout、CollapsingToolbarLayout、Toolbar使用

  • 是一个专门用来包裹Toolbar的控件,里面可以放置一个imageView和一个toolbar然后轻松地实现:随着滑动,图片和toolbar的标题也有动画。
  • 内部的子View一般都要加上属性:app:layout_collapseMode="",常用的是parallax,pin。parallax是视差滚动,用在imageView, pin是固定,用在toolbar。
  • setContentScrimColor(int)或者setContentScrim(drawable)来设置内容纱布,就是当折叠到只剩下Toolbar的时候,用一个另外的图片或者颜色来设置toolbar的背景
        mCollapsingToolbar.setContentScrimColor(getResources().getColor(R.color.colorPrimary));

设置状态栏的颜色:

this.getWindow().setStatusBarColor(getResources().getColor(R.color.colorPrimary));

需要demo请留邮箱。。

额外添加:

状态栏和导航栏的透明设置方法

  // fullscreen
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
            getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
            getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
        }

获取屏幕宽高的方法

  // get Size
        DisplayMetrics displayMetrics = new DisplayMetrics();
        getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
        mWidth = displayMetrics.widthPixels;
        mHeight = displayMetrics.heightPixels;

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值