【问题标题】:Flutter Network Image, loading the same imageFlutter Network Image,加载同一张图片
【发布时间】:2020-09-25 08:06:48
【问题描述】:

我正在尝试制作一个应用程序,您可以在输入字段中输入图像大小作为字符串,然后它会为您提供来自 https://picsum.photos/ 的随机图像,
问题是,如果我输入一个字符串让我们说“200”,
应用程序加载图像,当我再次使用“200”时,应用程序给我相同的图像,直到我重新加载整个应用程序。
如果有办法让应用程序在我每次按下按钮时加载不同的图像。
这是我使用的一些代码:

FadeInImage.assetNetwork(
              placeholder: 'lib/img/loading.gif',
              image: 'https://picsum.photos/${globals.imageSize}',
            ),

Container(
              width: 100,
              child: TextField(
                decoration: InputDecoration(
                  hintText: 'Size:',
                ),
                onChanged: (String str) {
                  globals.imageSize = str;
                },
              ),
            ),
RaisedButton(
              child: Text(
                'Search',
                style: TextStyle(color: Colors.white, fontSize: 15),
              ),
              color: Colors.lightBlueAccent,
              onPressed: () {
                Navigator.of(context).pushNamed('search');
              },
            ),

【问题讨论】:

  • 你的随机图片代码在哪里?
  • picsum.photos/300 每次我点击链接时它都会给我一个随机图像,这就是我正在尝试使用的。
  • 尝试添加 setState。
  • 这个有什么更新吗?
  • Network Image 或 FadeInImage.assetNetwork() 或 Image.asset() 一些如何缓存图像以加快加载速度,这很好,但如果每次用户使用考虑到我依赖网站获取随机图像,应用程序将发送相同的图像大小(发送相同的 url 将使应用程序使用该 url 的缓存图像)。

标签: flutter dart flutter-layout


【解决方案1】:

使用setState 更新值。

onChanged: (String str) {
      setState(() {   
      str = globals.imageSize; 
    });          
  },

【讨论】:

    猜你喜欢
    • 2020-12-16
    • 2015-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多