我需要半透明的状态栏。所以我在styles.xml中使用了标志。
<item name="android:windowTranslucentStatus">true</item>
my_layout.xml
<?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:orientation="vertical">
<include layout="@layout/tool_bar" />
<LinearLayout
android:id="@+id/containerCenter"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
android:orientation="vertical">
<ListView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:animateLayoutChanges="true"
android:background="#ffffff"
android:scrollbarStyle="outsideOverlay" />
<TextView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:gravity="center"
android:text="Test"/>
<EditText
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
</LinearLayout>
当我点击EditText时,软键盘与editText重叠。所以我使用标志“android:fitsSystemWindows = true”来解决这个问题。好。 但是上面的结果列表视图(在“tool_bar”和“containerCenter”之间)有高度等于状态栏高度的间隙。 我怎样才能消除这种差距?
如果我将android:fitsSystemWindows =“true”移动到最顶层的LinearLayout 差距已经消失但状态栏不再是半透明的。见附件#2