4.4以上状态栏透明方法
2016-06-22 14:20
316 查看
1.在setContentView(R.layout.xxx)之前调用
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { //透明状态栏 getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); //透明导航栏 getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION); }
如此,整个布局向上移动,状态栏信息透明在布局之上
2.如果仅仅需要状态栏透明,布局不向上移动,仅需要在1的步骤之后,在R.layout.xxx布局中最外层的布局加上android:fitsSystemWindows="true" android:clipToPadding="true"即可3.以上效果已经和5.0以上的效果一直 5.0以上的效果还可以使用
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP){Window window = getWindow();window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS | WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION| View.SYSTEM_UI_FLAG_LAYOUT_STABLE);window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);window.setStatusBarColor(Color.TRANSPARENT);window.setNavigationBarColor(Color.TRANSPARENT);}
相关文章推荐
- windows下mongodb数据库的安装
- 代码呀代码
- 对长字符串进行省略加...
- <<离散数学>>关系
- Eclipse Maven Jetty集成
- 线程池的原理及实现
- 安卓简单开发-几种dialog创建和使用
- 自然语言处理中的Attention Model:是什么及为什么
- Java 十进制和十六制之间的转化(负数的处理)___http://www.cnblogs.com/literoad/archive/2013/01/25/2875908.html
- 二进制插入
- React-Native学习指南
- 为 VR 优化 UE 4 渲染器
- HDU 3788 ZOJ问题
- 基于DSP的实时图像处理系统
- Rabbitmq for openstack
- Android开发一些实用的类、方法及接口(新手向)
- JSON 之FastJson解析
- LeetCode Add Binary(二进制加法)
- FPGA入门的基础知识
- MVC 区域内默认控制器不能访问(Multiple types were found that match the controller named ‘Index')