Android:当android:fitsSystemWindows为真时,Padding已经消失 - Lollipop

时间:2015-07-22 09:29:09

标签: android android-appcompat android-4.4-kitkat

以下是我的layout.xml启动画面。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:background="@android:color/holo_orange_light"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:fitsSystemWindows="true"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/splash_padding_bottom"
    android:paddingLeft="@dimen/splash_padding_left"
    android:paddingRight="@dimen/splash_padding_right"
    android:paddingTop="@dimen/splash_padding_top">

    <LinearLayout
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:orientation="vertical"
        android:layout_centerVertical="true"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <TextView
            android:id="@+id/title"
            android:textSize="@dimen/splash_title"
            android:textStyle="bold"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:text="@string/app_name"
            />

         <TextView
            android:textColor="@android:color/white"
            android:textSize="@dimen/splash_greetings"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:text="Hi\nthere,\ngood\nevening!"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"/>
    </LinearLayout>
</RelativeLayout>

styles.xml(values-v21)

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

现在,当我在kitkat上运行应用程序时,启动画面显示正常,但是当我在Lollipop上运行它时,我给RelativeLayout的所有填充都消失了。

我做错了什么?

2 个答案:

答案 0 :(得分:0)

这是正常行为,填充顶部和填充底部被android:fitsSystemWindows="true"覆盖。

您可以在fitSystemWindows上阅读Ian Lake的Medium帖子找到更多信息: https://medium.com/google-developers/why-would-i-want-to-fitssystemwindows-4e26d9ce1eec#.nljqv5yh8

答案 1 :(得分:0)

尝试添加android:margin而不是