android 透明状态栏(设置纯色背景)

来源:互联网 发布:知乎专栏文章怎么收藏 编辑:程序博客网 时间:2024/04/30 05:43

 使用透明状态栏必须在 4.4(API19)以上,在5.0(API21)做了优化,所以需要不同适配。设置透明状态栏,采取的是使用较多的方法,设置不同style

创建 values-v19/style.xml

 

<resources>    <!-- Base application theme. -->    <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">        <!-- Customize your theme here. -->        <item name="colorPrimary">@color/colorPrimary</item>        <item name="colorPrimaryDark">@color/color_2da568</item>        <item name="colorAccent">@color/colorAccent</item>        <item name="android:windowTitleBackgroundStyle">@color/color_2da568</item>        <item name="android:windowTranslucentStatus">true</item>        <item name="android:windowTranslucentNavigation">true</item>        <item name="android:fitsSystemWindows">true</item>    </style></resources>

创建 values-v21/style.xml

<resources>    <!-- Base application theme. -->    <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">        <!-- Customize your theme here. -->        <item name="colorPrimary">@color/colorPrimary</item>        <item name="colorPrimaryDark">@color/color_2da568</item>        <item name="colorAccent">@color/colorAccent</item>        <item name="android:windowTitleBackgroundStyle">@color/color_2da568</item>        <item name="android:windowTranslucentStatus">false</item>        <item name="android:windowTranslucentNavigation">true</item>        <item name="android:statusBarColor">@android:color/transparent</item>        <item name="android:fitsSystemWindows">true</item><!--可能导致 toast内容位置改变,解决方案:使用全局context-->    </style></resources>

布局文件:

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:background="@color/color_2da568"    android:orientation="vertical">    <RelativeLayout        android:layout_width="match_parent"        android:layout_height="?actionBarSize"        android:background="@color/color_2da568">        <TextView            android:onClick="onClick"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_centerInParent="true"            android:text="透明状态栏"            android:textColor="@android:color/white"            android:textSize="20sp" />    </RelativeLayout>    <FrameLayout        android:background="@android:color/white"        android:layout_width="match_parent"        android:layout_height="match_parent">    </FrameLayout></LinearLayout>

0 0
原创粉丝点击