尝试更新ListView项目

时间:2015-06-04 17:16:22

标签: java android listview android-listview

我正在开始一个ListView开始,包含4个项目:事件A,事件B,事件C和事件D.

这四个事件存储在名为ArrayList<Event>的{​​{1}}中,点击按钮我想从mEvents过滤掉事件B并相应地更新ArrayList使用ListView通过适配器。

我正在使用名为notifyDataSetChanged()的第二个ArrayList<Event>来存储应显示的事件(事件A / C / D),然后清除newEvents,然后将其设置为{{ {1}}。

当按下按钮时,由于某种原因,无论我尝试过滤哪个事件,总是会删除最后一个列表项(事件D)。

以下是相关代码,我们将不胜感激。

ListView代码:

mEvents

}

ListviewAdapter代码:

newEvents

}

2 个答案:

答案 0 :(得分:0)

您正在使用“NewEvent”而不是“newEvent”

答案 1 :(得分:0)

经过进一步的尝试,我们了解到用mListView.setAdapter(adapter)替换MyModel.objects.filter( active=True ).filter( Q(start__gt=today) | Q(end__lte=today) ).update(active=False) 行确实给了我预期的行为,但列表视图会滚动到列表的顶部,因为我&# 39; m重置适配器。