android沉浸式的实现
爱奇艺将整个屏幕作为影视的展示区,用户在看电影的时候眼中就只会有电影的内容,这样就不会被其他一些无关的东西所分心。
这才是沉浸式模式的真正含义,而所谓的什么沉浸式状态栏纯粹就是在瞎叫,完全都没搞懂“沉浸式” 这三个字是什么意思
@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的APP开发中,APP的界面如下: 可以看到,有状态栏、ActionBar(ToolBar)、导航栏等,一般来说,APP实现沉浸式有三种需求:沉浸式状态栏,隐藏导...
Android 实现沉浸式状态栏终极大招---只需一个工具类
我自己封装好的工具类 直接拿来使用 步骤第一步 在build.gradle下面添加依赖 第三方库地址::https://github.com/jgilfelt/SystemBarTint c...
Android适配---沉浸式状态栏
沉浸式状态栏 同事为状态栏有蒙层和无法调整黑色字符图标困扰了很久,最近稍微闲下来了,就开始搞一搞。我翻看了今日头条、微博的处理情况,都很ok啊。算是同是做资讯的,没理由咱不行啊,待我试试? ...
Android Study Material Design 十 再探沉浸式
LZ-Says: 这些年, 身边的“兄弟”越来越多, 真正的兄弟越来越少。。。 前言今天,我们不讲美女,不讲三国,那么我们一起来聊聊有关Android中沉浸式实现。...
Android 设置全屏沉浸式透明状态栏的工具类(超级简单,两步实现)
用法: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(sa...
Android 沉浸式状态栏的实现方法、状态栏透明
原文:点击访问 现在越来越多的软件都开始使用沉浸式状态栏了,下面总结一下沉浸式状态栏的两种使用方法 注意!沉浸式状态栏只支持安卓4.4及以上的版本状态栏:4.4上是渐变色,5.0上是完全透明,...
android:一行代码实现沉浸式布局效果
先看效果效果一:效果二:首先要引入statusbaruitl库compile 'com.jaeger.statusbaruitl:library:1.3.5'在Activity中一行代码实现: ...
Android 沉浸式几种实现方式
2017年04月29日 28.52MB 下载
Android 沉浸式状态栏攻略 让你的状态栏变色吧
转载请标明出处: http://blog.csdn.net/lmj623565791/article/details/48649563; 本文出自:【张鸿洋的博客】 一、概述近期注意到QQ...
热门文章
- android沉浸式的实现
阅读量:149
- android实现九宫格拼图小游戏
阅读量:113
- 三级联动
阅读量:96
- android实现简单的开关按钮
阅读量:85
- android studio修改项目、包名
阅读量:55
2
目录
收藏
评论