关于用res中values中styles.xml文件写出沉浸式状态栏

一,res文件

res文件目录下,values中styles.xml文件中的代码:

<style name="ImageTranslucentTheme" parent="AppTheme">

        <!--在Android 4.4之前的版本上运行,直接跟随系统主题-->
    </style>

    <style name="ColorTranslucentTheme" parent="AppTheme">
        <!--在Android 4.4之前的版本上运行,直接跟随系统主题-->

    </style>


res文件目录下,新建values-v19中styles.xml文件中的代码:
<style name="ImageTranslucentTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="android:windowTranslucentStatus">true</item>
        <item name="android:windowTranslucentNavigation">true</item>
    </style>

    <style name="ColorTranslucentTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="android:windowTranslucentStatus">true</item>
        <item name="android:windowTranslucentNavigation">true</item>
    </style>

res文件目录下,新建values-v21中styles.xml文件中的代码:
<style name="ImageTranslucentTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="android:windowTranslucentStatus">false</item>
        <!--内置按键的手机,不改变按键的背景,如华为-->
    <item name="android:windowTranslucentNavigation">false</item>
    <!--Android 5.x开始需要把颜色设置透明,否则导航栏会呈现系统默认的浅灰色-->
    <item name="android:statusBarColor">@android:color/transparent</item>
    </style>

    <style name="ColorTranslucentTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="android:windowTranslucentStatus">false</item>
        <!--内置按键的手机,不改变按键的背景,如华为-->
        <item name="android:windowTranslucentNavigation">false</item>
        <item name="android:statusBarColor">@color/green</item>

    </style>

二,在清单文件的activity节点中写入

android:theme="@style/ColorTranslucentTheme"(颜色的控制)
或者
android:theme="@style/ImageTranslucentTheme"(背景图片的控制)

三,如果想将布局不占据状态栏,则在显示的布局最外层写入
android:fitsSystemWindows="true"

(可以不用values-21)
(在显示的布局最外层写入: android:background="")







  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值