dart 当我回到上一个屏幕时,图像会自动重新加载

pkln4tw6  于 2023-09-28  发布在  其他
关注(0)|答案(1)|浏览(104)

When i go back from screen 2 to screen 1. Then images are reloaded automatically. Can anyone help me to stop reloaded.
我在ListView中有already tried the cacheExtent,也有cache_network_image插件,但不工作。

sc4hvdpw

sc4hvdpw1#

您面临此问题是因为您可能在屏幕2上加载多个图像,并且为了管理内存,将从缓存中清除图像。
所以解决方案是增加默认的图像缓存大小,创建如下的自定义类,它将覆盖图像缓存的默认大小

class NetworkImageCache extends WidgetsFlutterBinding {
  @override
  ImageCache createImageCache() {
    ImageCache imageCache = super.createImageCache();
    /// Set your image cache size to 500 Mb
    imageCache.maximumSizeBytes = 1024 * 1024 * 500;
    return imageCache;
  }
}

在main中调用这个类

void main() async {
  NetworkImageCache();
  WidgetsFlutterBinding.ensureInitialized();
  runApp(const MyApp());
}

建议您仅在发布模式下启用它

相关问题