• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > 对沉浸式状态栏的理解,沉浸式状态栏理解

对沉浸式状态栏的理解,沉浸式状态栏理解

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了沉浸式状态栏,沉浸式状态栏是什么,android 沉浸式状态栏,安卓沉浸式状态栏,魅族沉浸式状态栏等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

对沉浸式状态栏的理解,沉浸式状态栏理解


Android 4.4版本加入了沉浸式者这项功能,相信大家手中的安卓机也早已是Android 

4.4甚至更高版本。越来越多的应用实现了沉浸式状态栏这一个效果。

我们先看一个Demo,来熟悉一下沉浸式。

 

 

在图中可以清晰地看到,我们项目的顶部和手机的状态栏是融合在一起。这样表现得非常美观,自然。

 

其实,实现这一效果并非难事。

 

网上关于沉浸式的例子数不胜数,但是不是误导新人,就是垃圾代码太多。

 

话不多说,来看看我是怎样实现这一个效果的。

 

首先我们在要实现这一效果的布局文件(e.g.  example.xml)对应的Activity里面加入

下面代码。考虑到谷歌对Android 5.0以后的版本进行了大改。所以我们要在代码里进

行判

断,Android 4.4版本的沉浸式和Android 5.0以后版本的沉浸式是不太一样的。

 

@Override  
    protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
  
        // API >= 4.4 or API < 5.0 全透明状态栏  
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {  
            getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);  
        }  
  
        // API >=5.0 全透明实现  
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {  
            Window window = getWindow();  
            window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);  
            window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN  
                    | View.SYSTEM_UI_FLAG_LAYOUT_STABLE);  
            window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);  
            window.setStatusBarColor(Color.TRANSPARENT);  
        }  
    }  

然后我们在布局文件(e,g.  example.xml)下添加如下代码

<RelativeLayout...>               ------> 最外层  
...  
</RelativeLayout>             ------> 最外层  
  
在最外层里面加上  
android:clipToPadding="true"  
android:fitsSystemWindows="true"  

至此,我们的沉浸式就实现了。代码量很小,也很容易理解。

 

 

更多编程知识请关注,我的新浪微博: @吴天昊TnnoWu

 

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 菜鸟新闻2--设置沉浸式状态栏,新闻2--沉浸状态栏
  • 沉浸式状态栏与导航条,状态栏导航条
  • Android通知栏沉浸式/透明化完整解决方案,root不完整解决方法
  • Android设置透明状态栏和透明导航栏,android导航栏
  • Android中的沉浸式状态栏效果,android沉浸状态栏
  • Android中隐藏顶部状态栏的那些坑,android顶部状态栏
  • 状态栏一体化及其带来的软键盘自适应问题
  • 对沉浸式状态栏的理解,沉浸式状态栏理解
  • android沉浸式状态栏、变色状态栏、透明状态栏、修改状态栏颜色及透明
  • Android最佳实践之SystemBar状态栏全版本适配方案

相关文章

  • 2017-05-26安卓图片滑动,实现带小点的导航页面效果,安卓小点
  • 2017-05-26Android之万能播放器解码框架Vitamio的介绍及使用,androidvitamio
  • 2017-05-26安卓中Paint类和Canvas类的方法汇总,安卓中canvas
  • 2017-05-26My First Android Application Project 第一个安卓应用,android安卓
  • 2017-05-26Android 实用代码片段,
  • 2017-05-224.5.1 Intent的基本使用
  • 2017-05-26Android之Dedug--Circular dependencies cannot exist in AnimatorSet,circular
  • 2017-05-26【方法总结】创建、读取、删除文件相关操作,读取删除文件
  • 2017-05-26Android HandlerThread 消息循环机制之源码解析
  • 2017-05-26ViewPager和Fragment的组合使用,viewpagerfragment

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • android 所有焦点问题--Focus,android--focus
    • Mac下载安装Android Studio教程,androidstudio
    • Android系统 应用图标显示未读消息数(BadgeNumber) 桌面app图标的角标显示
    • Android 热修复原理及Gradle插件源码解析(以Nuwa为例)
    • 自定义控件详解(二):Path类 相关用法,详解path
    • Android开发:自动开关机实现教程
    • Kotlin中功能操作与集合(KAD 11),
    • Android编译错误——undefined reference to,androidundefined
    • 单机搭建Android开发环境(二),单机搭建android开发
    • android浏览器 源码共享,android浏览器源码

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有