Android 沉浸式状态栏(QQ5.0透明状态栏的效果)

大家注意一个问题:

魅族4.4系统,如果增加沉浸式状态栏,页面底部如果有按钮可能会被魅族的smbar遮挡,导致按钮不能被点击到的现象

看上面的这张图就是,魅族smatbar被隐藏后,挡住底部按钮,并且返回和 更多栏都是透明的..




先看一下QQ5.0版本的状态栏效果吧


下面是成功加入沉浸式状态栏后,我们的应用


首先要注意的是,这种沉浸式状态栏的效果4.4系统及以上才会支持

方法很简单,在你们代码setContentView之前中加入版本判断:


if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
            //透明状态栏
            getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
            //透明导航栏 一些手机如果有虚拟键盘的话,虚拟键盘就会变成透明的,挡住底部按钮点击事件所以,最后不要用
            //getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
        }


在对应的xml中想让状态栏和哪个View的背景颜色融合,就在哪个View中加入下面两行属性就行了

比如我想让状态栏和某一个ImageView的颜色融合

                    android:fitsSystemWindows="true"
                    android:clipToPadding="true"

<ImageView
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:scaleType="centerCrop"
                    android:fitsSystemWindows="true"
                    android:clipToPadding="true"
                    android:src="@drawable/bg_lesson_normal" />


这样就O了!!!!




  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
要在Android中去除状态栏,有几种方法可以实现。首先,你可以在Java代码中使用`requestWindowFeature(Window.FEATURE_NO_TITLE);`来去除当前Activity的标题栏,但无法去除状态栏。这个方法需要在`setContentView(R.layout.activity_splash);`之前添加。其次,你可以在清单文件的application标签中使用`android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"`来改变整个应用的状态栏和通知栏的显示情况。另外,你也可以在清单文件的Activity标签中使用`android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"`来只改变一个页面的状态栏和通知栏的显示情况。需要注意的是,如果你在清单文件中配置主题,那么该Activity必须继承自Activity类。如果你使用的是Android Studio默认创建的Activity,那么它继承的父类是V7包下的AppCompatActivity。另外,你还可以在修改AndroidManifest.xml文件中的`application`标签的`android:theme`属性,将其设置为`@style/AppTheme`。以上是几种去除Android状态栏的方法。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [Android 去掉状态栏的方法](https://blog.csdn.net/LLLxq1296/article/details/77146155)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [android 去掉顶部状态栏及全屏](https://blog.csdn.net/diuping20110926/article/details/126659226)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值