小编Moe*_*ABM的帖子

ArrayAdapter:按索引删除

我有一个由新闻服务器纲要(只是一个故事片段列表)填充的 ListView 和一个用于修改该 ListView 的 arrayAdapter。

我可以通过 'remove(Object)' 函数删除项目,但是如果有多个 'Object' 实例怎么办?remove() 仅删除了“Object”的第一个实例。例如,如果不删除第一个对象,我将无法删除数组适配器中的第二个“对象”。所以我的问题是我该如何解决这个问题?

例如:破败A

story 1 
story 2
Break
story 3
story 4
Break
story 5
etc...
Run Code Online (Sandbox Code Playgroud)

所以在这个例子中,我不能删除第二个 'Break',因为 remove('Break') 将删除第一个。如果我可以 removeByIndex(5),那就完美了,但是....

我尝试编写我自己的删除函数,该函数创建一个全新的适配器,其中包含除指定索引之外的所有成员。这就是我在搞什么。

public ArrayAdapter<String> removeIndex(ArrayAdapter<String> arr, int index) {
    ArrayAdapter<String> temp = new ArrayAdapter<String>(arr.getContext(),R.layout.list_item);
    for(int i =0 ; i<arr.getCount();i++){
        if(i != index) temp.add(arr.getItem(i));
    }
    return temp;
}
Run Code Online (Sandbox Code Playgroud)

帮助或建议是appriciated。

java android listview android-arrayadapter

3
推荐指数
1
解决办法
7729
查看次数

标签 统计

android ×1

android-arrayadapter ×1

java ×1

listview ×1