【发布时间】:2017-06-15 19:08:56
【问题描述】:
我在我的应用程序中使用 GWT 的 (2.5) SimplePager 类来显示预加载的数据(我事先知道确切的行数)。
问题在于最后一页。例如,假设我有 42 个元素,初始可见范围为 10。 第一页是 1-10,第二页是 11-20,第三页是 21-30,第四页是 31-40。 问题是第五页不是 41-42(我想要,因为我希望能够在相同的数据上来回滚动并“完全”)而是 33-42。
我已经尝试了各种修改覆盖 SimplePager / AbstractPager 方法的方法,但没有成功。 例如,如果我覆盖 setPageStart,则执行与 com.google.gwt.user.cellview.client.AbstractPager.setPageStart(int) 相同的操作,但将以下内容注释掉(我认为这是罪魁祸首代码):
if (isRangeLimited && display.isRowCountExact()) {
index = Math.min(index, display.getRowCount() - pageSize);
}
最后一页很好(41-42),但这会永远删除页面大小,当我从最后一页转到上一页时,它变成 40-41(预期:31-40)。这可能是因为页面大小不是提供给寻呼机实例的某个常数,而是使用最后使用的 Range 对象计算的(setPageStart 方法中的“int pageSize = range.getLength();”)。
在不破坏任何东西的情况下根据我的需要修改分页行为的任何线索?
谢谢!
【问题讨论】:
标签: gwt