如何限制列表项在ListView中显示10和下一个10后单击下一步按钮

sar*_*ran 9 android android-listview android-button

我有一个包含100个项目的列表视图,我想显示前10个项目,点击下一个按钮我必须显示下一个10即.从11到20,我有获得前10项的代码

public int getCount() {
        return 10;
    }
Run Code Online (Sandbox Code Playgroud)

但如何单独获得下一个10项等等.任何的想法

Jan*_*haR 8

一种方法是,

1)不要使用所有数据填充ArrayList.而是将它们保存在单独的ArrayList(al1)中,并使用al2最多10个值的ArrayList()与BaseAdapter一起使用.

2)最初,

  • al2 = al1 [0]到al1 [9]
  • BaseAdatper(上下文,数据)

3)保持BaseAdapter不变,但改变

 @Override
 public int getCount() {
 return 10;
}
Run Code Online (Sandbox Code Playgroud)

 @Override
 public int getCount() {
 return data.size();
}
Run Code Online (Sandbox Code Playgroud)

这不是必须的,但这是一种很好的做法.现在,您将只显示10个项目,因为您正在传递给适配器.还要在扩展BaseAdatper类中编写公共函数来设置data变量.

4)在下一个按钮单击事件中获取接下来的10个项目al1并分配给al2.使用你写超过编写公共职能dataal2.

5)BaseAdapter有一个名为notifyDataSetChanged的方法,调用它.这样做是告诉适配器从上到下刷新.由于您data在刷新时已经过度写入了新数据,因此您将看到新数据.而已.

我不认为你想出一个方法来跟踪al1你当前正在显示哪个索引并不困难.:)