兼容 Android 4.4 透明状态栏与导航栏
来源:互联网 发布:网络认证 编辑:程序博客网 时间:2024/04/30 16:54
Android 系统自4.2 开始 UI 上就没多大改变,4.4 也只是增加了透明状态栏与导航栏的功能,如图
左边为 4.2.2 右边为 4.4.2
那么现在我就来给大家讲解下如何使用这个新特性,让你的 app 跟随潮流,当然如果你不在乎外观就算了,
使用这个特性能开发出很漂亮的UI,尤其对于 google 原生系统,屏幕下方的导航栏白白占据一块屏幕空间,看起来很不爽
图为 sommth 客户端,
OK废话不多讲,开始讲技术吧,第一种方法,在代码设置:
直接调用上面2行代码可以透明,但是你会发现你的 view 跑到 actionbar 上面去了,很明显 google 的意图是使你的 view 可以占据整个屏幕,然后 状态栏和导航栏 透明覆盖在上面很明显这样不可行。
那有没有办法使你的 view 保持原来大小呢?
有,你需要在这个 activity 的 layout xml 文件添加两个属性
这样状态栏的背景就是你的 activity 的主背景,倘若actionbar 在,将会很难看,如图:
事实证明,google 并没有提供一个比较好的解决方案,他的 透明状态栏与导航栏的应用局限于,全屏阅读文字或玩游戏那种情景,
第二种方式,是是设置 theme 属性
如果你使用自定主题,只需在在 values-19 文件添加以下属性:
刚刚说了这个使用有局限性,不过好在有一个开源的东西
https://github.com/jgilfelt/SystemBarTint
可以设置 statusbar 背景,原理是在 Window 的 DocView 添加 view,大家可以下载这个项目学习如何使用
左边为 4.2.2 右边为 4.4.2
那么现在我就来给大家讲解下如何使用这个新特性,让你的 app 跟随潮流,当然如果你不在乎外观就算了,
使用这个特性能开发出很漂亮的UI,尤其对于 google 原生系统,屏幕下方的导航栏白白占据一块屏幕空间,看起来很不爽
图为 sommth 客户端,
OK废话不多讲,开始讲技术吧,第一种方法,在代码设置:
直接调用上面2行代码可以透明,但是你会发现你的 view 跑到 actionbar 上面去了,很明显 google 的意图是使你的 view 可以占据整个屏幕,然后 状态栏和导航栏 透明覆盖在上面很明显这样不可行。
那有没有办法使你的 view 保持原来大小呢?
有,你需要在这个 activity 的 layout xml 文件添加两个属性
这样状态栏的背景就是你的 activity 的主背景,倘若actionbar 在,将会很难看,如图:
事实证明,google 并没有提供一个比较好的解决方案,他的 透明状态栏与导航栏的应用局限于,全屏阅读文字或玩游戏那种情景,
第二种方式,是是设置 theme 属性
如果你使用自定主题,只需在在 values-19 文件添加以下属性:
刚刚说了这个使用有局限性,不过好在有一个开源的东西
https://github.com/jgilfelt/SystemBarTint
可以设置 statusbar 背景,原理是在 Window 的 DocView 添加 view,大家可以下载这个项目学习如何使用
0 0
- 兼容 Android 4.4 透明状态栏与导航栏
- 兼容 Android 4.4 透明状态栏与导航栏
- 兼容 Android 4.4 透明状态栏与导航栏
- 兼容 Android 4.4 透明状态栏与导航栏
- 兼容 Android 4.4 透明状态栏与导航栏
- Android 4.4 沉浸式透明状态栏与导航栏
- Android 4.4 沉浸式透明状态栏与导航栏
- Android 4.4 沉浸式透明状态栏与导航栏
- android 4.4 支持透明状态栏和透明导航栏
- android 4.4 支持透明状态栏和透明导航栏
- android 4.4 支持透明状态栏和透明导航栏
- Android 沉浸式透明状态栏与导航栏
- androidの4.4版本沉浸式透明状态栏与导航栏案例
- Android 4.4 沉浸式透明状态栏与导航栏,android4.4
- Android 4.4 沉浸式透明状态栏与导航栏,android4.4
- 沉浸式透明状态栏与导航栏
- android 4.4.2 状态栏和导航栏透明
- Android透明式状态栏、导航栏实现
- 辗转相除法求最大公约数
- Android PopupWindows
- UISlider 滑块控件
- yii 下拉框
- 信号量与PV操作
- 兼容 Android 4.4 透明状态栏与导航栏
- centos7下配置dns服务器
- fedora 关闭防火墙的方法
- 《Java编程思想》学习笔记8——泛型编程高级
- Hadoop2.x Yarn作业提交(客户端)
- 多个返回 顶部的代码
- SAT阅读真题资料3
- 禁止锁屏和隐藏标题栏
- 四分位数(定义、位置、数值)