我正在尝试使用Kitkat的transparent navigation bars功能,我得到了一个奇怪的效果:
当我将fitsSystemWindows
属性添加到true
时,填充似乎会添加到我的视图底部。此属性将添加到第一个视图,因此它不会与顶部对齐并显示在状态栏后面。
这就是我想要和期待的:
但这就是我得到的:
我也用TextView
s测试了它,结果相同。我无法让它工作,我想我错过了什么。
以下是我的代码:
档案 values-19/styles.xml
:
<style name="AppTheme" parent="android:Theme.Holo.NoActionBar.TranslucentDecor">
</style>
我的布局文件:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#800"
android:orientation="vertical" >
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#80f0"
android:fitsSystemWindows="true"
android:src="@drawable/ic_launcher" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#800f"
android:src="@drawable/ic_launcher" />
</LinearLayout>
答案 0 :(得分:1)
您应该将android:fitsSystemWindows
放在LinearLayout而不是ImageView上。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#800"
android:orientation="vertical"
android:fitsSystemWindows="true" >
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#80f0"
android:src="@drawable/ic_launcher" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#800f"
android:src="@drawable/ic_launcher" />
</LinearLayout>