有没有办法在我导航回列表视图页面时更新它?
Is there a way to update my listview page as I navigate back to it?
我的应用程序有三个页面,一个主页、一个列表视图页面和一个设置页面。我从主页导航到列表视图页面,然后单击列表视图页面中的浮动操作按钮,我创建了一个新配置文件并进入该配置文件的设置页面。一旦我选择了我的设置,我希望它们显示在我的列表视图中的卡片中。我有一个 sqflite 数据库,可以从中检索设置。这很好用,但有一个主要问题:我必须热重新加载我的应用程序才能让每张新卡片显示在我的列表视图中。
我想要的是在我导航回列表视图页面时更新它。
我尝试过使用 Navigator Push 从我的设置页面返回到我的列表视图页面,如下所示:
Navigator.push(
context,
MaterialPageRoute(builder: (context) => ProfilesList(),
);
这是因为我的列表视图会立即更新。但是当我点击后退按钮时,我并没有跳回主页,而是再次进入设置屏幕,因为这是我推送的地方。所以我无法返回主应用程序屏幕。
有解决办法吗?目前,我必须在个人资料列表未更新但导航正常工作,或者个人资料列表更新但导航不工作之间做出选择。
在导航方面,我需要的是:第 1 页 => 第 2 页 => 第 3 页 => 第 2 页 => 第 1 页
多亏了这个,我找到了解决问题的办法:https://www.filledstacks.com/post/flutter-navigation-cheatsheet-a-guide-to-the-navigator/
所以基本上,我不得不从设置页面弹出,但向其中添加值 "true",如下所示:
Navigator.pop(context, true);
然后,在我的列表视图页面中,我所要做的就是等待该值返回,此时我可以重新加载我的列表,如下所示:
var navigationResult = await Navigator.push(
context,
MaterialPageRoute(
builder: (context) =>
ProfileCreator(),
),
);
if (navigationResult == true){
setState(() {
getList();
});
我希望有一天这对某人有用...
我的应用程序有三个页面,一个主页、一个列表视图页面和一个设置页面。我从主页导航到列表视图页面,然后单击列表视图页面中的浮动操作按钮,我创建了一个新配置文件并进入该配置文件的设置页面。一旦我选择了我的设置,我希望它们显示在我的列表视图中的卡片中。我有一个 sqflite 数据库,可以从中检索设置。这很好用,但有一个主要问题:我必须热重新加载我的应用程序才能让每张新卡片显示在我的列表视图中。
我想要的是在我导航回列表视图页面时更新它。
我尝试过使用 Navigator Push 从我的设置页面返回到我的列表视图页面,如下所示:
Navigator.push(
context,
MaterialPageRoute(builder: (context) => ProfilesList(),
);
这是因为我的列表视图会立即更新。但是当我点击后退按钮时,我并没有跳回主页,而是再次进入设置屏幕,因为这是我推送的地方。所以我无法返回主应用程序屏幕。
有解决办法吗?目前,我必须在个人资料列表未更新但导航正常工作,或者个人资料列表更新但导航不工作之间做出选择。
在导航方面,我需要的是:第 1 页 => 第 2 页 => 第 3 页 => 第 2 页 => 第 1 页
多亏了这个,我找到了解决问题的办法:https://www.filledstacks.com/post/flutter-navigation-cheatsheet-a-guide-to-the-navigator/
所以基本上,我不得不从设置页面弹出,但向其中添加值 "true",如下所示:
Navigator.pop(context, true);
然后,在我的列表视图页面中,我所要做的就是等待该值返回,此时我可以重新加载我的列表,如下所示:
var navigationResult = await Navigator.push(
context,
MaterialPageRoute(
builder: (context) =>
ProfileCreator(),
),
);
if (navigationResult == true){
setState(() {
getList();
});
我希望有一天这对某人有用...