沉浸式状态栏

         最近变色龙顶栏到处都是。所以也跟着实现了一下。其原理也比较简单:

        1、在manifest文件中将application:theme改为Theme.AppCompat.Light.NoActionBar

   2、定义一个toobar的布局,并设置android:fitsSystemWindows这个属性为true,这个主要是给状态栏留空间的,如果不设置,系统的状态栏就会和你的toobar挤在一起。

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/id_toolbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@color/colorPrimary"
    android:fitsSystemWindows="true" >
</android.support.v7.widget.Toolbar>
        3、在BaseActivity中判断Android版本号,高于或者等于4.4就设置状态栏为透明:

   @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        if(Build.VERSION.SDK_INT>=Build.VERSION_CODES.KITKAT)//sdk版本号高于4.3
        {
            Window window=getWindow();
            //状态栏设置为透明
            window.setFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS,WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
        }
    }
        4、继承BaseActivity,将toobar设置给需要使用的activity即可。

public class MainActivity extends BaseActivity{
    private Toolbar toolbar;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        toolbar= (Toolbar) findViewById(R.id.id_toolbar);
        setSupportActionBar(toolbar);
    }
}
         下面就是最后的效果:

参考:沉浸式顶栏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值