我有一个包含 100 个项目的列表视图,我想显示前 10 个项目,单击“下一步”按钮时,我必须显示下一个 10 个项目,即从 11 到 20,我有获取前 10 个项目的代码
public int getCount() {
return 10;
}
但如何单独获得接下来的 10 件物品等等。
任何想法
一种方法是,
1) 不要用所有数据填充 ArrayList。相反,将它们保存在单独的 ArrayList 中(al1
) 并使用 ArrayList (al2
),最多有 10 个值可与您的 BaseAdapter 一起使用。
2)最初,
- al2 = al1[0] 到 al1[9]
- BaseAdapter(上下文,数据)
3) 保持BaseAdapter不变但改变
@Override
public int getCount() {
return 10;
}
to
@Override
public int getCount() {
return data.size();
}
这不是必须的,但这是一个很好的做法。现在您将只显示 10 个项目,因为这就是您传递给适配器的所有项目。还要在扩展的 BaseAdatper 类中编写一个公共函数来设置data
多变的。
4) 在下一个按钮单击事件中获取接下来的 10 个项目al1
并分配给al2
。使用你写的public函数来覆盖data
with al2
.
5) BaseAdapter有一个名为notifyDataSetChanged的方法, 叫它。它的作用是告诉适配器从上到下刷新。既然你有data
当刷新发生时,您将看到新数据。就是这样。
我认为你想出一种方法来跟踪哪个索引到哪个索引并不困难al1
您当前正在显示。 :)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)