ListView高度不适应内容

时间:2017-03-21 21:56:19

标签: android android-layout listview xamarin

我正在努力使用Xamarin和Android应用程序的布局。我有一个ListView,如下面的代码所示,但每当我用多个城市填充它时,ListView不会扩展。相反,我需要滚动它,而高度只允许一次显示一个项目。

我真正想要的是ListView要扩展,因为它包含越来越多的项目。但与此同时,我不希望键盘覆盖EditText字段。感觉我已经尝试了Everything,包括将所有内容放在scrollview中并将listView的layout_height设置为wrap_content。但它只是行不通。

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/scrollView1">
    <LinearLayout
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:minWidth="25px"
        android:minHeight="25px"
        android:paddingLeft="15px"
        android:paddingRight="15px"
        android:paddingBottom="15px"
        android:paddingTop="15px"
        android:id="@+id/linearLayout1">
        <TextView
            android:text="Select algorithm:"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/textView1" />
        <RadioGroup
            android:minWidth="25px"
            android:minHeight="25px"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/radioGroup1"
            android:animateLayoutChanges="true"
            android:orientation="horizontal">
            <RadioButton
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:checked="true"
                android:text="Greedy Best first Search"
                android:id="@+id/radioButton1" />
            <RadioButton
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="A* Best First Search"
                android:id="@+id/radioButton2" />
        </RadioGroup>
        <TextView
            android:text="Add location coordinates:"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/linearLayout2"
            android:paddingTop="30px" />
        <ListView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/listViewCoords" />
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal">
            <EditText
                android:inputType="numberDecimal"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_gravity="left"
                android:layout_weight="1"
                android:id="@+id/editTextX" />
            <EditText
                android:inputType="numberDecimal"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_gravity="right"
                android:layout_weight="1"
                android:id="@+id/editTextY" />
        </LinearLayout>
        <Button
            android:text="Add"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/buttonAdd" />
        <Button
            android:text="Clear all"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/buttonClear" />
        <Button
            android:text="Find shortest path"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/buttonSearch" />
    </LinearLayout>
</ScrollView>

2 个答案:

答案 0 :(得分:1)

不要将ListView用于ScrollView。它在很多方面都是错误的。

如果您想将列表用于可滚动内容,请使用 RecyclerView 并使用 NestedScrollView 进行换行。

答案 1 :(得分:0)

不得将列表视图置于ScrollView 下。我的代码中没有看到任何其他问题。

相关问题