0

我有 5 个列表视图,我想将它们放在相同的布局中。我的想法是使用滚动视图,但显然这不是很好。

我怎么能这样做。

谢谢你。

这是我的布局代码:

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/bg_white" >


<ImageView
    android:id="@+id/imageView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_centerVertical="true"
    android:background="@null"
    android:src="@drawable/bg_mdpi" />


 <TextView
     android:id="@+id/SearchingForTextView"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:layout_alignParentLeft="true"
     android:layout_alignParentTop="true"
     android:layout_marginTop="5dp"
     android:text="Searching for: "
     android:textAppearance="?android:attr/textAppearanceSmall"
     android:textColor="#ff000000"
     android:visibility="visible" />


<TextView
    android:id="@+id/SearchingFor"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_toRightOf="@+id/SearchingForTextView"
    android:layout_marginTop="5dp"
    android:text="Word"
    android:textColor="#112ED4"
    android:textAppearance="?android:attr/textAppearanceSmall"
    android:visibility="visible" />

<TextView
    android:id="@+id/JournalsSearchTextView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_below="@+id/SearchingFor"
    android:layout_marginTop="10dp"
    android:background="#ff888888"
    android:gravity="center_horizontal"
    android:text="Journals"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:textColor="#ff000000"
    android:textStyle="bold" />


<ListView
    android:id="@+id/JournalSearchListView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/JournalsSearchTextView"
    android:layout_centerHorizontal="true"
    android:background="#D5DADE"
    android:cacheColorHint="#00000000">
</ListView>

 <TextView
    android:id="@+id/ArticlesSearchTextView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_below="@+id/JournalSearchListView"
    android:background="#ff888888"
    android:gravity="center_horizontal"
    android:text="Articles"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:textColor="#ff000000"
    android:textStyle="bold" />

 <ListView
    android:id="@+id/ArticlesIssuesSearchListView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/ArticlesSearchTextView"
    android:layout_centerHorizontal="true"
    android:background="#D5DADE"
    android:cacheColorHint="#00000000" >
</ListView>



<TextView
    android:id="@+id/AuthorsSearchTextView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_below="@+id/ArticlesIssuesSearchListView"
    android:background="#ff888888"
    android:gravity="center_horizontal"
    android:text="Authors"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:textColor="#ff000000"
    android:textStyle="bold" />



<ListView
    android:id="@+id/AuthorsSearchListView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/AuthorsSearchTextView"
    android:layout_centerHorizontal="true"
    android:background="#D5DADE"
    android:padding="1dp"
    android:cacheColorHint="#00000000">
</ListView>


<TextView
    android:id="@+id/SubmissionsSearchTextView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_below="@+id/AuthorsSearchListView"
    android:background="#ff888888"
    android:gravity="center_horizontal"
    android:text="Submissions"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:textColor="#ff000000"
    android:textStyle="bold" />

 <ListView
    android:id="@+id/SubmissionsSearchListView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/SubmissionsSearchTextView"
    android:layout_centerHorizontal="true"
    android:background="#D5DADE"
    android:cacheColorHint="#00000000">
</ListView>

  <TextView
    android:id="@+id/SpecialIssuesSearchTextView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_below="@+id/SubmissionsSearchListView"
    android:background="#ff888888"
    android:gravity="center_horizontal"
    android:text="Special Issues"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:textColor="#ff000000"
    android:textStyle="bold" />

 <ListView
    android:id="@+id/SpecialIssuesSearchListView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/SpecialIssuesSearchTextView"
    android:layout_centerHorizontal="true"
    android:background="#D5DADE"
    android:cacheColorHint="#00000000" >
</ListView>

4

2 回答 2

1

我终于得到了你想要的。您想显示 5 个不同类别的搜索结果。

我建议您可以为此使用 ExpandableListView。Android 提供了一个类似于以下结构的 ExpandableListView:

Group A       (v)
-----------------
  Child A1
-----------------
  Child A2
-----------------
  Child A3
-----------------
Group B       (v)
-----------------
  Child B1
-----------------
  Child B2
-----------------
  Child B3
-----------------
Group C       (v)
-----------------
  Child C1
-----------------
  Child C2
-----------------
  Child C3

用法与 ListView 非常相似。您要做的是编写一个扩展 BaseExpandableListAdapter 的适配器。您还可以为组视图/子视图实现自定义布局。

您可以参考这些页面:

http://about-android.blogspot.com/2010/04/steps-to-implement-expandablelistview.html

http://www.techienjoy.com/android-expandable-list-dynamically-created-example.php

http://android-adda.blogspot.com/2011/06/custom-expandable-listview.html

于 2012-05-30T08:35:52.490 回答
0

如果您不需要ListViews 可滚动,正如您在评论中提到的那样,并且列表最多包含约 10 个项目,我会考虑使用 aLinearLayout而不是 a ListView,并将所有 5 LinearLayouts 放在一个 bigScrollView中。

编辑:代码示例:

布局:

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:isScrollContainer="true"
    android:orientation="vertical"
    android:scrollbars="vertical" >
    <LinearLayout
        android:id="@+id/list1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical" />
</ScrollView>

代码:

LinearLayout list = (LinearLayout) findViewById(R.id.list);
for (String s : arrayList1) {
  TextView tv = new TextView(this);
  tv.setText(s);
  list.addView(s);
}
for (String s : arrayList2) {
  TextView tv = new TextView(this);
  tv.setText(s);
  list.addView(s);
}
于 2012-05-30T08:09:29.830 回答