Android沉浸式状态栏
2017-2-23 liuyingcong 安卓开发
在配置文件相应的activity中添加自定义的style,代码:
<activity android:name=".activity.AuthorActivity" android:theme="@style/ImageTranslucentTheme"> </activity>
因为Android4.4以前的版本不支持改变状态栏背景,以及5.0以后有一些区别,所以要定义3个版本的style: ①在values文件夹中的styles中添加代码:②在values-v19(没有则新建)文件夹中的styles中添加代码:<!--沉浸式状态栏--> <style name="ImageTranslucentTheme" parent="@android:style/Theme.Light.NoTitleBar"> <!--在Android 4.4之前的版本上运行,直接跟随系统主题--> </style>
<!--沉浸式状态栏--> <style name="ImageTranslucentTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <item name="android:windowTranslucentStatus">true</item> <item name="android:windowTranslucentNavigation">true</item> </style>③在values-v21(没有则新建)文件夹中的styles中添加代码:
<!--沉浸式状态栏--> <style name="ImageTranslucentTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <item name="android:windowTranslucentStatus">true</item> <item name="android:windowTranslucentNavigation">true</item> <!--Android 5.x开始需要把颜色设置透明,否则导航栏会呈现系统默认的浅灰色--> <item name="android:statusBarColor">@android:color/transparent</item> </style>再设置activity布局的时候Y轴起点就是屏幕最上方了。状态栏高度是20dp。