我如何在抖动中加载100张图像?

时间:2020-06-25 10:30:11

标签: flutter

我有两个滑杆,每个滑杆总共有9个台阶,我有大约100种不同的选择 我需要根据这两个数字在屏幕上显示图像 问题是上传照片“眨眼效果”需要一段时间 有什么方法可以使其更快?

我想我可以将整个图像放在ram中。

它们大约有10 MB

注意:我需要两张幻灯片,因为每个数字都有不同的含义

Image(image: AssetImage('assets/images/${firstSlideValue.toInt()}${secondSlideValue.toInt()}.png'),),

2 个答案:

答案 0 :(得分:0)

也许您可以创建要加载的资产路径(图像)列表,然后在页面的initState中将路径传递到rootBundle.load(assetPath);,对其进行迭代。然后使用MemoryImage从字节创建图像:

import 'package:flutter/services.dart' show rootBundle;

List<String> assetsPath = [...];

initState() async {
List<Image> images = [];
  for(int i=0; i<assetsPath.length; i++){
     var data = await rootBundle.load(assetsPath[i]);
     var image = Image(image: MemoryImage(data.buffer.asUint8List()));
     images.add(image);
  }
}

答案 1 :(得分:0)

gaplessPlayback=true

当图像提供程序更改时,是继续显示旧图像(true),还是暂时不显示任何图像(false)。 我只是开始显示旧图片,直到新图片完全上传