问题描述
我想向您提出一些有关GWT的SimplePager对象的问题。
因此,我得到了一些特殊的项目列表,这些项目实现了HasRows
接口以能够使用分页。
但是问题在于列表可以在不集成用户的情况下增加大小。
然后将元素添加到列表中,SimplePager的大小也应增加。
但我想避免刷新整个页面并仅更新解析器。
因此,当前在初始化网站时,我正在打电话:
pager.setDisplay(customList);
并且当列表增长时什么也不做。 因此,我认为将项目添加到列表时可以使用相同的方法。
例如:
public void onItemAdded(Person person){
customList.add(person);
pager.setDisplay(customList);
}
但这不是重新绘制窗口小部件,只有在用户刷新站点后,它才会再次初始化窗口小部件并在列表中获得适当数量的项目。
任何想法我如何可以强制对传呼机本身进行更新?
1楼
您应该在列表和寻呼机之间使用ListDataProvider<Person>
:
ListDataProvider<Person> dataProvider = new ListDataProvider<Person>();
dataProvider.setDataDisplay(customList);
pager.setDisplay(customList);
然后您添加项目的功能将是:
public void onItemAdded(Person person){
dataProvider.getList().add(person);
}
通过设置dataDisplay,基础列表上的每个操作都将在此显示上更新。 参见