flutter_staggered_grid_view icon indicating copy to clipboard operation
flutter_staggered_grid_view copied to clipboard

The position state cannot be restored when you use Navigator.of(context).pop();

Open BlackTryyy opened this issue 8 months ago • 2 comments

flutter version : 3.1.0

I'm using easy_refresh: ^3.3.2+2 to wrap a

flutter_staggered_grid_view: ^0.7.0

so that when I slide down to load new content, I click

Navigator.push(
context,
MaterialPageRoute(
builder: (context) =>

, then Navigator.of(context).pop(); When you come back, the location information of the previous page is lost

https://github.com/letsar/flutter_staggered_grid_view/assets/131345116/93a619e1-d7f7-4d50-8b2d-0200d82c4e22

BlackTryyy avatar Nov 06 '23 10:11 BlackTryyy

Flutter 版本:3.1.0

我用来包装一个 easy_refresh: ^3.3.2+2

flutter_staggered_grid_view: ^0.7.0

这样当我向下滑动以加载新内容时,我单击

Navigator.push(
context,
MaterialPageRoute(
builder: (context) =>

,则当您返回时,上一页的位置信息将丢失Navigator.of(context).pop();

b39c0d315cb5cb8d0aec557b58bbd4f4.mp4

您这个问题应该不是该组件的原因,而是你列表页面需要添加AutomaticKeepAliveClientMixin

bing127 avatar Nov 08 '23 10:11 bing127

Flutter 版本:3.1.0 我用来包装一个 easy_refresh: ^3.3.2+2 flutter_staggered_grid_view: ^0.7.0 这样当我向下滑动以加载新内容时,我单击

Navigator.push(
context,
MaterialPageRoute(
builder: (context) =>

,则当您返回时,上一页的位置信息将丢失Navigator.of(context).pop(); b39c0d315cb5cb8d0aec557b58bbd4f4.mp4

您这个问题应该不是该组件的原因,而是你列表页面需要添加AutomaticKeepAliveClientMixin

我列表里面添加了AutomaticKeepAliveClientMixin,我认为即使没有添加AutomaticKeepAliveClientMixin,在pop出来之后,依然会保存有context的内容,这个方案在我其他页面没有使用该组件,但是其他保持一致的情况下(同样使用AutomaticKeepAliveClientMixin和Navigator.of(context).pop()以及easy_refresh)得到了印证,我觉得是当前的组件在load几次之后让滑动位置丢失或者错乱了

BlackTryyy avatar Nov 13 '23 02:11 BlackTryyy