首页 > 解决方案 > 如何通过最终列表keepImage = [] 到下一页

问题描述

如何将图像列表传递到下一页我尝试在代码顶部声明并这样做,但它说

  PostView({File? keepImage}) : this.keepImage = keepImage ?? [];

“keepImage”不是封闭类中的字段。尝试更正名称以匹配现有字段,或定义一个名为

我已将图像保存到

final List<File> keepImage = [];

这是挑选图像功能

  Future<void> chooseImage() async {
    final pickedFile = await picker.getImage(source: ImageSource.gallery);
    setState(() {
      keepImage.add(File(pickedFile!.path));
    });
    if (pickedFile?.path == null) retrieveLostData();
  }

  Future<void> retrieveLostData() async {
    final LostData response = await picker.getLostData();
    if (response.isEmpty) {
      return;
    }
    if (response.file != null) {
      setState(() {
        keepImage.add(File(response.file!.path));
      });
    } else {
      print(response.file);
    }
  }

在此处输入图像描述

在此处输入图像描述

标签: firebaseflutterdart

解决方案


有几种方法可以做到这一点。

最简单的方法是shared preferences将图像 url 存储在缓存中,这样您就可以在任何地方检索它。另一个是使用参数,当导航到另一个页面时,为它传递这个图像的 id。


推荐阅读