我创建了一个自定义选项卡导航器,现在我需要知道如何使用多个接收自定义适配器的 ListView。
当我需要使用自定义适配器时,我创建了一个ListView
withid=android:list
并将类设置为 Extends ListActivity。但是现在我觉得我做不到...
我创建了一个自定义选项卡导航器,现在我需要知道如何使用多个接收自定义适配器的 ListView。
当我需要使用自定义适配器时,我创建了一个ListView
withid=android:list
并将类设置为 Extends ListActivity。但是现在我觉得我做不到...
要在单个活动上拥有多个 listView,不需要扩展 ListActivity。只需将普通 ListViews 添加到 xml lauyout 文件并在活动中引用它们并设置所需的适配器。
示例:xml 文件
<ListView android:id="@+id/list_view1" android:layout_width="fill_parent"
android:layout_height="wrap_content">
</ListView>
<ListView android:id="@+id/list_view2" android:layout_width="fill_parent"
android:layout_height="wrap_content">
</ListView>
关于活动:
setContentView(R.layout.xmlfile)...
ListView lv1 = (ListView) findViewById(R.id.list_view1);
ListView lv2 = (ListView) findViewById(R.id.list_view2);
lv1.setAdaper(new CustomAdapter1());
lv2.setAdaper(new CustomAdapter2());
@努诺·贡萨尔维斯
XML 文件中的一个小错误/优化:
在 ListViews 的情况下,最好将layout_height
和layout_width
属性定义为fill_parent
并使用属性对其进行缩放layout_gravity
。将layout_height
ListView 设置wrap_content
为不是最佳的,可能会导致错误或性能问题。
但是您的解决方案将在这种情况下起作用:)
例子:
<ListView android:id="@+id/list_view1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="1">
</ListView>
<ListView android:id="@+id/list_view2"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="1">
</ListView>