Android5.0以上实现全透明的状态栏方法(仿网易云界面)
作者:qq402335257
下面小编就为大家分享一篇Android5.0以上实现全透明的状态栏方法(仿网易云界面),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
Android4.4以上要实现沉浸式状态栏可以通过在style文件设置
<style name="AppTheme.NoActionBar"> <item name="windowActionBar">false</item> <item name="windowNoTitle">true</item> <item name="android:windowTranslucentStatus">true</item> </style>
就能得到透明的状态栏,比较网易云音乐的界面会发现网易云的状态栏是全透明的,而通过设置windowTranslucentStatus得到的状态栏背景始终是半透明的矩形。所以状态栏颜色会比toolbar颜色深一点(Material Design)
状态栏颜色深一点
状态栏和toolbar颜色是相同的。
为了达到同样的效果,搜索了挺多方法,找到一段代码比较合适。使用如下代码。然后布局文件加上paddingtop属性,设置为25dp。注意布局文件里不需要设置fitSystemWindows属性。设置以后就实现了网易云音乐的界面效果了。
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_STABLE); window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); window.setStatusBarColor(Color.TRANSPARENT); }
以上这篇Android5.0以上实现全透明的状态栏方法(仿网易云界面)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。