android响应式沉浸栏适配
来源:互联网 发布:bae java 编辑:程序博客网 时间:2024/06/07 14:34
文章转至:http://blog.csdn.net/fan7983377/article/details/51604657
现在越来越多的软件都开始使用沉浸式状态栏了,下面总结一下沉浸式状态栏的两种使用方法
注意!沉浸式状态栏只支持安卓4.4及以上的版本
状态栏:4.4上是渐变色,5.0上是完全透明,本文模拟器为4.4演示
效果图:
注意!两种方法的区别:
第一种:为顶部栏跟随当前activity的布局文件的背景的颜色,使用方便,不过也有点问题就是,如果有底部虚拟导航键的话,导航键的背景跟顶部的颜色一样,比如:
第二种:是通过设置顶部栏的颜色来显示的,可以解决第一种的不足,比如:
第一种使用方法:
第一、首先在values、values-v19、values-v21文件夹下的styles.xml都设置一个 Translucent System Bar 风格的Theme,如下图:
values/style.xml:
- 1
- 2
- 3
- 1
- 2
- 3
values-v19/style.xml:
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
values-v21/style.xml:
- 1
- 2
- 3
- 4
- 5
- 6
- 1
- 2
- 3
- 4
- 5
- 6
第二、在清单文件中配置需要沉浸式状态栏的activity加入theme
- 1
- 2
- 1
- 2
第三、在Activity的布局文件中的跟布局加入“android:fitsSystemWindows=”true””,但是,这里需要区分一下,就是背景是图片还是纯色:
1.当背景为图片时,布局可以这么写:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
效果:
2.当背景为纯色,我们需要对布局划分一下,标题布局与内容布局,先把根布局背景设置成标题布局的背景色,然后标题背景色可以不用设置直接使用根布局的背景色,最后内容布局背景色设置为白色
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
效果图:
好了,以上就是沉浸式状态栏实现的全过程,但是还有一点值得注意的就是,如果我们activity比较多,每一个页面都添加Android:fitsSystemWindows="true"
比较麻烦,我们需要改动一下:
写一个基类BaseColorActivity.class,代码如下:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
然后需要沉浸状态栏的activity继承该基类:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
然后需要沉浸状态栏的activity的布局文件中就可以把android:fitsSystemWindows="true"
这行代码给省略了!
- android响应式沉浸栏适配
- Android 沉浸式 完全沉浸
- Android 沉浸式全屏
- Android 沉浸式状态栏
- android 沉浸式 状态栏
- Android沉浸式
- Android 添加沉浸式
- android 沉浸式状态栏
- android沉浸式状态栏
- Android沉浸式状态栏
- Android 沉浸式状态栏
- android 沉浸式状态栏
- Android沉浸式状态栏
- Android沉浸式状态栏
- android沉浸式标题栏
- Android 沉浸式状态栏
- Android沉浸式状态栏
- android 沉浸式状态栏
- VPS安装和访问CentOS 7远程桌面
- 遗忘现在的路上,我们走向成长
- 寒蝉在柳--解
- 练习 3-1 在上面有关折半查找的例子中,while循环语句内共执行了两次测试,其实只要一次就足够(代价是将更多的测试在循环外执行)。重写该函数,使得在循环内部只执行一次测试。
- vue项目优化之按需加载组件-使用webpack require.ensure
- android响应式沉浸栏适配
- 针对ANSYS Workbench 应用ICEM各种错误分类
- confidence weighted 置信权重在线算法(转)
- Weblogic 在安装完以后报Unrecognized option: -jrockit错误
- 获取url信息
- 【MySQL】mysql left join 多个表
- 软件测试概念总结
- 小白逛公园(线段树)
- TensorFlow四种Cross Entropy算法实现和应用