安卓开发-功能项-隐藏标题栏、透明状态栏

113 阅读1分钟

前言

这是一个新系列,这里主要分享的是开发过程中遇到的功能点实现,方便查阅
这个系列会比较简略
PS:图片是我用ai生成滴,好看吧

隐藏标题栏

  1. 在activity的setContentView之前调用:
requestWindowFeature(Window.FEATURE_NO_TITLE);

如果你使用的dataBinding,请在DataBindingUtil.setContentView之前调用
2. 在你的theme中加入:

<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>

完成

透明状态栏

这里只提供api>=23的,小于23的未做过验证:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
    Window window = getWindow();
    window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
    window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR);
    window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
    window.setStatusBarColor(getResources().getColor(R.color.transport));
}

完成