将项添加到ListView的中间

时间:2011-08-07 04:09:18

标签: java android android-listview

现在,我正在使用此代码将项添加到listView:

SimpleAdapter adapter;
List<HashMap<String, String>> painItems = new ArrayList<HashMap<String, String>>();
ListView listthings;
int[] to;
String[] from;

private void addItem() {
    HashMap<String, String> map = new HashMap<String, String>();
    //put stuff in the map here.
    painItems.add(map);
    adapter.notifyDataSetChanged();

}

我想知道我是否能够在某个位置而不是列表的末尾将项目添加到列表中。这似乎不应该太难,但我可能会遗漏一些基本的东西。

感谢您的帮助和欢呼。

2 个答案:

答案 0 :(得分:2)

您正在寻找painItems.add(index, map);

其中index是您要添加元素的位置。所有元素将被移动一个位置到新索引的索引+ 1。

您必须小心,因为如果索引大于当前大小,此方法将抛出IndexOutOfBoundsException

http://download.oracle.com/javase/6/docs/api/java/util/List.html#add(int,%20E

答案 1 :(得分:1)

是的,只需使用add:

的重载版本
myList.add(myPosition, myItem)