gpt4 book ai didi

android - 当我导航回 ListView 页面时,是否可以更新它?

转载 作者:行者123 更新时间:2023-12-03 03:54:54 25 4
gpt4 key购买 nike

我的应用程序包含三个页面,一个主页,一个列表 View 页面和一个设置页面。我从首页导航到列表 View 页面,然后单击列表 View 页面中的“ float 操作”按钮,然后创建一个新的配置文件并转到该配置文件的设置页面。选择设置后,我希望它们在卡片的列表 View 中显示。我有一个从中检索设置的sqflite数据库。这很好用,但存在一个主要问题:我必须为每张新卡热加载我的应用,才能在列表 View 中显示。

我想要的是在我导航回列表 View 页面时对其进行更新。

我尝试过的是使用Navigator Push来从设置页面返回到列表 View 页面,如下所示:

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

这是因为我的列表 View 随后立即更新。但是,当我单击“后退”按钮时,我没有回到弹出页面,而是再次进入设置屏幕,因为这是我按下的位置。因此,我无法返回主应用程序屏幕。

有解决方案吗?目前,我必须在配置文件列表未更新但导航正常的情况下进行选择,或者在配置文件列表更新但导航无效的情况下进行选择。

在导航方面,我需要的是:页面1 =>页面2 =>页面3 =>页面2 =>页面1

最佳答案

由于以下原因,我找到了解决问题的方法:https://www.filledstacks.com/post/flutter-navigation-cheatsheet-a-guide-to-the-navigator/

因此,基本上,我必须从设置页面弹出,但要在其中添加值“true”,如下所示:

Navigator.pop(context, true);

然后,在我的listview页面中,我所要做的就是等待该值返回,此时我可以重新加载列表,如下所示:
                 var navigationResult = await Navigator.push(
context,
MaterialPageRoute(
builder: (context) =>
ProfileCreator(),
),
);
if (navigationResult == true){
setState(() {
getList();
});

我希望有一天对某人有用...

关于android - 当我导航回 ListView 页面时,是否可以更新它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61734411/

25 4 0