按需加载列表项

时间:2015-05-22 14:56:57

标签: android listview scroll

我想按需加载消息列表。 我在列表视图中显示20条消息,当用户在列表顶部滚动时,有一个按钮可以加载更多20条消息。 与whatsapp一样,当用户点击按钮时,上面会加载更多消息,用户可以再滚动20条消息。

我尝试使用Loaders,每次单击按钮时我都会发布一个在适配器上加载消息的事件。 然而,当适配器重新加入新的itens时,焦点将转到列表的末尾。

我试图将焦点设置到正确的位置,但Loader的事件会重新加载适配器,焦点会回到列表的末尾。

我找到的唯一解决方案是在一段时间后设置焦点,但用户可以看到列表将结束并返回到正确的位置。

如何像Whats app一样按需加载消息?

1 个答案:

答案 0 :(得分:-1)

您必须在ArrayList中只添加20个对象,并在列表适配器中添加HeaderView。单击headerView。它将在列表适配器中加载更多20个项目。并调用notifyDataSetChange();之后。