开发者社区> 紫雾凌寒> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Android 状态栏沉浸式的实现

简介: 版权声明:本文为博主原创文章,转载请注明出处http://blog.csdn.net/u013132758。 https://blog.csdn.net/u013132758/article/details/48557055 随着Android 系统的不断更新,Android设计趋于简单便捷,所有软件的设计现在都趋于扁平化设计。
+关注继续查看
版权声明:本文为博主原创文章,转载请注明出处http://blog.csdn.net/u013132758。 https://blog.csdn.net/u013132758/article/details/48557055

随着Android 系统的不断更新,Android设计趋于简单便捷,所有软件的设计现在都趋于扁平化设计。像微软的新出的Windows 10,google前不久出的Android M也就是Android 6.0系统的设计分格都是扁平化的。可能扯的有点远了。
大家都看到从Android 4.4后,有好多APP,像QQ等都有沉浸式状态栏,可能有读者不知道什么是沉浸式,看下图就知道了。本文小编为大家介绍如何写出沉浸式。
大家可以看到系统蓝和QQ状态栏是一个颜色的
大家可以看到顶端系统栏和QQ状态栏是一个颜色的
**

1.第一步 先修改对应界面的布局文件

在xml文件中添加如下代码

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

如果不加clipToPadding和fitsSystemWindows这两个属性,Activity中的内容会整体上移状态栏高度的距离,状态栏会将Activity内容遮住。

2.第二部 然后修改对应的Activity文件

找到OnCreate方法,在oncreate方法中加入判断SDK的版本是否大于4.4,只有4.4以上才支持状态栏沉浸。
代码如下:

public class MainActivity extends Activity {  

    @SuppressLint("InlinedApi")  
    @Override  
    protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.activity_main);  

        //判断当前SDK版本号,如果是4.4以上,就是支持沉浸式状态栏的  
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
            getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
            getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
        } 
    }  
}  

小编推荐一篇:小编感觉还不错
小编推荐

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Android Studio如何隐藏系统的状态栏
Android Studio如何隐藏系统的状态栏
72 0
Android开发之Activity转场动画
引子 相信开发过iOS的程序员都知道iOS ViewController之间的跳转动画非常多,很酷对不对?这让开发Android的羡慕不已,曾几何时,Android中的Activity跳转是何等的生硬,But,在Android 5.0以后,Google也为Activity的转场设计了更加友好的动画效果。
764 0
Android透明顶栏(沉浸式)在android4.4上的实现
android的透明顶栏是在android5.0加入的新特性, 虽然其实在ios中早就有了.....: 在5.0中的实现方式很简单: 在style.
801 0
android 通话状态
引用:http://blog.chinaunix.net/uid-25370280-id-2941384.html 思路:就是一个监听,很简单代码如下你自己试试:private class EndCallListener extends PhoneStateListener {          ...
586 0
+关注
92
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载