首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在反对pickImage imagePicker之后,我会查看getImage imagePicker吗?

在反对pickImage imagePicker之后,我会查看getImage imagePicker吗?
EN

Stack Overflow用户
提问于 2022-05-30 06:24:28
回答 1查看 173关注 0票数 0

当我将不推荐的ImagePicker包getImage更改为pickImage时,未来的图像生成器没有再次显示图像,如何解决这个问题。

代码语言:javascript
复制
final picker = ImagePicker();
  late Future<PickedFile?> pickedFile = Future.value(null);


FutureBuilder<PickedFile?>(
                future: pickedFile,
                builder: (context, snap) {
                  if (snap.hasData) {
                    return Container(
                      child: Image.file(
                        File(snap.data!.path),
                        fit: BoxFit.contain,
                      ),
                      color: Colors.blue,
                    );
                  }
                  return Image.asset('images/img.png',height: 100,);
                },
              ),

  Future<void> GetImage() async {
    pickedFile = picker
        .getImage(source: ImageSource.gallery)
        .whenComplete(() => {setState(() {})});
  }

这是另一个函数,它显示了一个错误,但在未来的构建器中从未见过。

代码语言:javascript
复制
      Future<void> GetImage() async {
  pickedFile = picker
        .pickImage(source: ImageSource.gallery,imageQuality: 50)
        .whenComplete(() => {setState(() {})}) as Future<PickedFile?>;
  }

当我使用getImage时,当我尝试使用文件(pickedImage!.path)时,没有为‘Future’类型定义“getter‘path”。

EN

回答 1

Stack Overflow用户

发布于 2022-05-30 06:48:04

您也可以在本例中使用它:

代码语言:javascript
复制
class ImagePage extends StatefulWidget {
  const ImagePage({Key? key}) : super(key: key);

  @override
  State<ImagePage> createState() => _ImagePageState();
}

class _ImagePageState extends State<ImagePage> {
  Image image = Image.asset('images/img.png', height: 100,);

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Container(
        child: image,
        color: Colors.blue,
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: () async {
          final ImagePicker _picker = ImagePicker();
          final _image = await _picker.pickImage(
              source: ImageSource.gallery, imageQuality: 50);
          image = Image.file(File(_image.path));
          setState(() {});
        },
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72429951

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档