Android - 透明SystemBar

最近国内的手机ROM(MIUI, Flyme等)都升级了Android 4.4,预测下半年国内APP 会有很多使用Android4.4特性。
Android 4.4可以支持StatusBar和NavigationBar透明了,记录一下相关代码。

透明StatusBar和NavigationBar

1
2
3
4
5
Window win = getWindow();
WindowManager.LayoutParams winParams = win.getAttributes();
winParams.flags |= WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS;
winParams.flags |= WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION;
win.setAttributes(winParams);

或者

1
2
3
4
<style name="Translucent.SystemBar" parent="@android:style/Theme.Holo.Light">
<item name="android:windowTranslucentStatus">true</item>
<item name="android:windowTranslucentNavigation">true</item>
</style>

透明ActionBar(MEIZU SmartBar) ———- style.xml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<resources>
<style name="AppBaseTheme" parent="android:style/Theme.DeviceDefault.Light">
</style>
<style name="AppTheme" parent="AppBaseTheme">
<item name="android:actionBarStyle">@style/ActionBar</item>
</style>
<style name="ActionBar" parent="android:Widget.DeviceDefault.Light.ActionBar">
<item name="android:background">@color/translucent_background</item> (color = #000000)
<item name="android:backgroundSplit">@color/translucent_background</item>
</style>
</resources>

代码:https://github.com/gavinliu/TransparentSystemBar

MX3
MOTO X

Gavin Liu wechat
欢迎您扫一扫上面的二维码,订阅我的微信公众号!