listview里面的scrollview只显示一个列表项?如何显示所有列表项

时间:2013-03-26 11:32:03

标签: android android-listview android-scrollview

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >
    <TextView
        android:id="@+id/section_one_header"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="18dp"
        android:layout_marginRight="10dp"
        android:layout_marginTop="10dp"
        android:singleLine="true"
        android:text="Summary"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:textColor="#51556C"
        android:textSize="13sp"
        android:textStyle="bold" />

    <ListView
        android:id="@+id/section_list_view"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:layout_marginTop="5dp" >
    </ListView>

    <TextView
        android:id="@+id/section_two_header"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="18dp"
        android:layout_marginRight="10dp"
        android:layout_marginTop="10dp"
        android:singleLine="true"
        android:text="Data"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:textColor="#51556C"
        android:textSize="13sp"
        android:textStyle="bold" >
    </TextView>

    <LinearLayout
        android:id="@+id/eve_det"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:layout_marginTop="5dp"
        android:background="@layout/style_evedetail"
        android:orientation="vertical" >

        <TextView
            android:id="@+id/section_two_data"
            android:layout_width="fill_parent"
            android:layout_height="100dp"
            android:layout_marginBottom="10dp"
            android:layout_marginLeft="10dp"
            android:layout_marginRight="10dp"
            android:layout_marginTop="10dp"
            android:scrollbars="vertical"
            android:textSize="10sp" >
        </TextView>

        <EditText
            android:id="@+id/section_two_edit_text"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="10dp"
            android:layout_marginLeft="10dp"
            android:layout_marginRight="10dp"
            android:layout_marginTop="10dp"
            android:focusableInTouchMode="true"
            android:imeActionId="@+id/done_button"
            android:imeActionLabel="done"
            android:singleLine="true" />
    </LinearLayout>

    <TextView
        android:id="@+id/section_three_header"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="18dp"
        android:layout_marginRight="10dp"
        android:layout_marginTop="10dp"
        android:text="Attachment"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:textColor="#51556C"
        android:textSize="13sp"
        android:textStyle="bold" >
    </TextView>
    <ListView
        android:id="@+id/attachment_list_view"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="20dp"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp" />
</LinearLayout>

这是滚动视图下的代码。在这里,我需要显示Header和相应的ListView,然后使用Edit Text显示TextView,然后再显示header和ListView。任何人都可以帮助我如何在两个列表视图中显示所有列表项,或者是否有任何其他想法帮助我。

1 个答案:

答案 0 :(得分:1)

是,因为列表视图具有默认滚动功能。如果将列表视图放在另一个可滚动视图(例如Scroll-view)中。列表滚动会妨碍。

为了避免这种情况,列表视图具有页眉和页脚视图的概念。

您可以在列表中添加n个页眉和页脚。

以下示例代码片段如何通过向其展示任何xml布局来添加页眉/页脚

LayoutInflater inflater = activity.getLayoutInflater();
LinearLayout listFooterView = (LinearLayout)inflater.inflate(
            R.layout.footer_layout, null);

list.addFooterView(listFooterView);


LinearLayout listHeaderView = (LinearLayout)inflater.inflate(
                R.layout.header_layout, null);

    list.addHeaderView(listHeaderView);