将数组追加到已经数据绑定的ListView

时间:2014-03-03 07:40:18

标签: android android-listview

目前,我有一个

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <ListView android:id="@+id/listview1"></ListView>
    <ListView android:id="@+id/listview2"></ListView>

</LinearLayout>

和我的按钮点击事件中的2个我将数据发布到相应的ListViews:

Button1点击:

List result = GetSomeDate();
ListAdapter customAdapter = new ListAdapter(this, R.layout.itemlistrow, result);
listview1.setAdapter(customAdapter);

按钮2点击:

List result = GetSomeOtherDate();
ListAdapter customAdapter = new ListAdapter(this, R.layout.itemlistrow, result);
listview2.setAdapter(customAdapter);

我想知道,我只能留下一个ListView:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >

        <ListView android:id="@+id/universalListView"></ListView>

    </LinearLayout>
如果List类型相同,

并在我的事件上附加List。

唯一的规则是,如果在Button2之前或之后点击了Button1,那么Button1 click中的List应始终位于顶部。

提前致谢!

1 个答案:

答案 0 :(得分:3)

在自定义适配器中创建类似的方法:HERE data是适配器中的列表。

   public void addAll(List<mtItems> items) 
   {
        if(item!=null && item.size()>0){
        data.addAll(items);
             notifyDataSetChanged()

        }
    }
每当要在已填充的列表中添加一些项目时,都会调用此适配器方法。像

customAdapter.addAll(myItems);  

这就是全部。