Android沉浸式(设置状态栏颜色)

目前为止只支持4.4以上的版本。

首先需要用到systembartintAndroid沉浸式(设置状态栏颜色)


compile好之后就可以了,直接上代码了


public class BaseActivity extends FragmentActivity {

    protected SystemBarTintManager tintManager;

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        initWindow();
    }

    @TargetApi(19)
    protected void initWindow() {
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
            getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
            tintManager = new SystemBarTintManager(this);
            setStatusBarColor(getResources().getColor(R.color.colorAccent));
            tintManager.setStatusBarTintEnabled(true);
        }
    }

    protected void setStatusBarColor(int color) {
        if (tintManager != null)
            tintManager.setStatusBarTintColor(color);
    }

    protected void disableSystemBarTint() {
            if (tintManager != null)
                tintManager.setStatusBarTintEnabled(false);
    }

}



public class MainActivity extends BaseActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
//        setStatusBarColor(Color.parseColor("#000000"));
//        disableSystemBarTint();
    }
}
你可以直接继承,在BaseActivity里面设置状态栏的颜色,如果你要设置其他的颜色,可以通过
setStatusBarColor()来设置,
disableSystemBarTint();是根据你title的颜色去设置的,希望能帮到你!