Android5.0以上实现全透明的状态栏方法(仿网易云界面)
发布时间:2020-12-15 00:49:51 所属栏目:C语言 来源:网络整理
导读:Android4.4以上要实现沉浸式状态栏可以通过在style文件设置 style name="AppTheme.NoActionBar" item name="windowActionBar"false/item item name="windowNoTitle"true/item item name="android:windowTranslucentStatus"true/item /style 就能得到透明的状
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以上实现全透明的状态栏方法(仿网易云界面)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程小技巧。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |