爱奇艺将整个屏幕作为影视的展示区,用户在看电影的时候眼中就只会有电影的内容,这样就不会被其他一些无关的东西所分心。
这才是沉浸式模式的真正含义,而所谓的什么沉浸式状态栏纯粹就是在瞎叫,完全都没搞懂“沉浸式” 这三个字是什么意思
过于老的系统根本就没有提供沉浸式体验的支持,安卓4.1之后才支持沉浸式的效果!!!
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    initView();
    mScrollView.setScrollViewListener(this);
    initListeners();
    //透明导航栏
    if (Build.VERSION.SDK_INT >= 21) {
        View decorView = getWindow().getDecorView();
        int option = View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
                | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                | View.SYSTEM_UI_FLAG_LAYOUT_STABLE;
        decorView.setSystemUiVisibility(option);
        getWindow().setNavigationBarColor(Color.TRANSPARENT);
        getWindow().setStatusBarColor(Color.TRANSPARENT);
    }
    ActionBar actionBar = getSupportActionBar();
    actionBar.hide();

}

这里使用了SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION,

表示会让应用的主体内容占用系统导航栏的空间,然后又调用了setNavigationBarColor()方法将导航栏设置成透明色

效果是这样的

然而真正的沉浸式是这样的

当你确定要使用沉浸式模式,

那么只需要重写Activity的onWindowFocusChanged()方法,
然后加入如下逻辑即可:
@Override
public void onWindowFocusChanged(boolean hasFocus) {
    super.onWindowFocusChanged(hasFocus);
    if (hasFocus && Build.VERSION.SDK_INT >= 19) {
        View decorView = getWindow().getDecorView();
        decorView.setSystemUiVisibility(
            View.SYSTEM_UI_FLAG_LAYOUT_STABLE
            | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
            | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
            | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
            | View.SYSTEM_UI_FLAG_FULLSCREEN
            | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
    }
}

界面默认情况下是全屏的,状态栏和导航栏都不会显示。

而当我们需要用到状态栏或导航栏时,只需要在屏幕顶部向下拉,

或者在屏幕右侧向左拉,

状态栏和导航栏就会显示出来,此时界面上任何元素的显示或大小都不会受影响。

过一段时间后如果没有任何操作,状态栏和导航栏又会自动隐藏起来,

重新回到全屏状态。

这就是最标准的沉浸式模式。

android沉浸式的实现相关推荐

  1. Android沉浸式模式状态栏(二)

    其实说到沉浸式状态栏这个名字,真不知道这种叫法是谁先发起的.因为Android官方从来没有给出过沉浸式状态栏这样的命名,只有沉浸式模式(Immersive Mode)这种说法.而有些人在没有完全了解清 ...

  2. 高大上的Android沉浸式状态栏?

    背景 之前做过Android沉浸式状态栏的相关需求,但是一直忙于工作,没时间系统的整理下沉浸式相关的知识,所以今天抽出时间,写一篇 Android沉浸式状态栏的文章. 何为沉浸式 沉浸式就是要给用户提 ...

  3. Android 沉浸式状态栏 实现方式二 ( 更简单 )

    以前写过一个沉浸式状态栏 的实现方式 Android 沉浸式状态栏 实现方式一 现在有个更为简单的实现方式 . 相关链接 http://www.apkbus.com/forum.php?mod=vie ...

  4. android 5.0状态栏下载地址,Android沉浸式状态栏(5.0以上系统)

    Android沉浸式状态栏(5.0以上系统) 沉浸式状态栏可以分为两种: 1.直接给状态栏设置颜色 (如下图:) 这里写图片描述 java代码形式: if (Build.VERSION.SDK_INT ...

  5. Android 沉浸式状态栏完美解决方案

    Android 沉浸式状态栏完美解决方案 参考文章: (1)Android 沉浸式状态栏完美解决方案 (2)https://www.cnblogs.com/dingxiansen/p/9929828. ...

  6. 史上最完美的Android沉浸式状态导航栏攻略

    前言 最近我在小破站开发一款新App,叫高能链.我是一个完美主义者,所以不管对架构还是UI,我都是比较抠细节的,在状态栏和导航栏沉浸式这一块,我还是踩了挺多坑,费了挺多精力的.这次我将我踩坑,适配各机 ...

  7. android 沉浸式开源库,Android沉浸式状态栏

    关于Android沉浸式状态栏, 网上已经有很多开源库, 虽然开源库可以解决某些特定布局下的沉浸式状态栏问题, 但是遇到比较特殊的布局就无法解决了, 所以了解一下沉浸式状态栏如何实现是有必要的. 无论 ...

  8. Android沉浸式状态栏工具类,一句代码轻松搞定

    Android沉浸式状态栏工具类,一句代码轻松搞定 博客原文及源码地址:http://jaeger.itscoder.com/android/2016/03/27/statusbar-util.htm ...

  9. android沉浸式+虚拟按键+Fragment+CoordinatorLayout(2)

    android沉浸式+CoordinatorLayout+Fragment CoordinatorLayout和沉浸式还是上一篇一样的需求要求图片要深入到标题栏,如果不是这样的问题可以跳过了. 问题: ...

  10. Android 沉浸式模式

    郭霖的专栏 每当你在感叹,如果有这样一个东西就好了的时候,请注意,其实这是你的机会 Android状态栏微技巧,带你真正理解沉浸式模式 目录(?)[+] 什么是沉浸式 隐藏状态栏 隐藏导航栏 真正的沉 ...

最新文章

  1. 软件定义汽车:本质并行化的有效平台
  2. 日常开发技巧:使用notify-send发送通知
  3. OpenGL键盘消息实例
  4. 华为云社区·CSDN【寻找黑马程序员】有奖征文活动,邀你挥洒才情
  5. 机器学习实战 基于_基于ScikitLearn、Keras和TensorFlow的机器学习实战:分类
  6. PHP字符串替换函数strtr()的功能实现讲解
  7. php 连等赋值,变量赋值时的,多个变量连等的问题
  8. 初探腾讯云物联网开发平台loT
  9. 如何使用Frontline实时抓取蓝牙协议栈HCI LOG
  10. iredmail mysql 配置_Iredmail各大组件连接Mysql配置说明
  11. 码农故事:一个辞职创业卖凉皮的程序员
  12. win7计算机锁频图片怎么设置,Win7系统怎么使用注册表设置锁屏壁纸的图文教程...
  13. Pandas完美读取html格式的Excel所有隐藏数据
  14. python学习记录——容器篇
  15. Omit和Exclude的区别
  16. Faas,又一个未来?
  17. new bing聊天机器人免翻命令行使用--大佬逆向工程api
  18. 区块链骇客第一讲:重入攻击
  19. ICC tie cells
  20. 我是僵尸生存java_我的世界1.6.2我是僵尸整合包

热门文章

  1. 队列--参考源码(转)
  2. 关于java开发邮件接收程序的一点总结
  3. beyond compare实现只比较特定关键字
  4. 做好了官网却没客户,要做好seo优化
  5. 使用python导出msc.marc后处理数据——PyPost介绍
  6. 黑马程序员-MyBatis 框架-最全入门笔记、阿伟看了都得说真大、真细、真全!!!
  7. w ndows11如何设置电源选项,2018年度巨献(4):11款650W全模组80Plus金牌+电源横评
  8. 【LaTex】在 LaTex 中优雅地插入行内和行间代码
  9. pat甲级考试报名费_每日一感——记第一次PAT甲级考试之感想
  10. PNP三极管和NPN三极管的开关电路