我将什么传递给Flutter Completer对象?

问题描述 投票:0回答:1

关于堆栈溢出的先前问题讨论了获取某人发布答案的图像大小

    Future<ui.Image> _getImage() {
        Completer<ui.Image> completer = new Completer<ui.Image>();
        new NetworkImage('https://i.stack.imgur.com/lkd0a.png')
          .resolve(new ImageConfiguration())
          .addListener((ImageInfo info, bool _) => completer.complete(info.image));
        return completer.future;
  }

遗憾的是,由于complete.complete(info.image)在Android Studio中出现错误,上述代码无法编译:

参数类型'image'无法分配给参数类型'FutureOr'

有人可以建议如何更正代码,以便Completer对象能够正常工作吗?

我会问接受答案的原始海报,但我还没有足够的声誉来评论。所以我在这里问这个问题。

原始帖子的链接在这里:

How do I determine the width and height of an image in Flutter?

image dart flutter size future
1个回答
1
投票

这意味着类型不匹配。

看看你的代码,它应该工作,因为ImageInfo.image应该返回ui.Image

首先,您可以省略构造函数中的类型,如下所示:

Completer<Image> completer = Completer();

如果您仍然遇到问题,那么查看更多堆栈跟踪会很有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.