如何在PageView onPageChanged中获取以前的索引?目前,我可以使用以下代码在页面更改时获取当前索引:
PageView(
children: <Widget>[
SomeView(),
SomeOtherViews(),
SomeOtherViews(),
],
controller: _pageViewController,
onPageChanged: _onPageViewChange,
);
_onPageViewChange(int page) {
print("Current Page: " + page.toString());
}
颤动有没有任何内置功能?或者我应该手动保存页面作为上一页的参考?
将页面减1并存储在类Variable(调用setState&modify)或局部变量中。如果当前页面为0,则将previousPage
设置为totalPageCount - 1。
_onPageViewChange(int page) {
print("Current Page: " + page.toString());
int previousPage = page;
if(page != 0) previousPage--;
else previousPage = 2;
print("Previous page: $previousPage");
}
你可以使用PageView.builder,它会给你页面索引。
PageView.builder(
itemBuilder: (context, index) {
// index gives you current page position.
return _buildPage();
},
itemCount: listItemCount, // Can be null
)