使用 LinearLayout 添加 headers 到 ListView,Listview 被推离屏幕 (Xamarin Android)

Adding headers to ListView with LinearLayout, Listview gets pushed off screen (Xamarin Android)

正如标题所说,我想向显示地址的列表视图添加一些 headers。看来我基本上可以在页面上显示的列表视图或 headers 之间进行选择。 在下图中,我的 headers(4 个文本视图)呈线性布局。当线性布局在我的代码中时,我的列表视图不显示

当我删除我的线性布局时,我的列表视图出现了!我的代码如下:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical"
        android:id="@+id/frameLayoutParent"
        android:background="@android:color/holo_green_dark">
    <android.support.v4.widget.SwipeRefreshLayout 
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        android:id="@+id/swipeLayout">
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal"
            android:id="@+id/headerLinearLayout">
            <TextView
                android:text="Address Line"
                android:id="@+id/headerAddressLine"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_weight="25"
                android:gravity="center_horizontal"
                android:textSize="16sp"/>
            <TextView
                android:text="City"
                android:id="@+id/headerCity"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_weight="25"
                android:gravity="center_horizontal"
                android:textSize="16sp"/>
            <TextView
                android:text="State"
                android:id="@+id/headerState"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_weight="25"
                android:gravity="center_horizontal"
                android:textSize="16sp"/>
            <TextView
                android:text="Zip Code"
                android:id="@+id/headerZipCode"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_weight="25"
                android:gravity="center_horizontal"
                android:textSize="16sp"/>
        </LinearLayout>
        <ListView
                android:paddingTop="40dp"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:id="@+id/myListView"/>

    </android.support.v4.widget.SwipeRefreshLayout>
    <EditText
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/editSearch"
            android:hint="Search ZipCodes"
            android:textColor="#000"
            android:editable="false"/>
</FrameLayout>

我试过:

感谢任何帮助!

根据你的代码和描述,你可以尝试在SwipeRefreshLayout中添加一个LinearLayout,然后在LinearLayout中添加子元素,像这样:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:id="@+id/frameLayoutParent"
    android:background="@android:color/holo_green_dark">
<android.support.v4.widget.SwipeRefreshLayout 
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:id="@+id/swipeLayout">
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent" 
        android:orientation="vertical">
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:id="@+id/headerLinearLayout">
        <TextView
            android:text="Address Line"
            android:id="@+id/headerAddressLine"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="25"
            android:gravity="center_horizontal"
            android:textSize="16sp"/>
        <TextView
            android:text="City"
            android:id="@+id/headerCity"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="25"
            android:gravity="center_horizontal"
            android:textSize="16sp"/>
        <TextView
            android:text="State"
            android:id="@+id/headerState"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="25"
            android:gravity="center_horizontal"
            android:textSize="16sp"/>
        <TextView
            android:text="Zip Code"
            android:id="@+id/headerZipCode"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="25"
            android:gravity="center_horizontal"
            android:textSize="16sp"/>
    </LinearLayout>
    <ListView
           
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:id="@+id/myListView"/>
    </LinearLayout>
</android.support.v4.widget.SwipeRefreshLayout>
<EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content" 
    android:layout_gravity="bottom"
        android:id="@+id/editSearch"
        android:hint="Search ZipCodes"
        android:textColor="#000"
        android:editable="false"/>

截图为:

我修改editSearch EditTextandroid:layout_gravity="bottom",你想怎么改就怎么改。