图片资源加载太慢

时间:2018-11-12 13:56:50

标签: flutter

我注意到图像资源加载太慢而无法使用的问题。

在这个简单的示例(如下)中,当加载图像时,您可以看到一个初始屏幕,然后图像资源加载并出现在屏幕上。

我原本希望一眼就能看到所有内容,而不是看到正在加载的资产

  Widget build(BuildContext context) {
    return Scaffold(
      body: Stack(
        children: [
          Positioned.fill(child: Image.asset(imagePaths[6], fit: BoxFit.cover)),
        ]
    )
    );
  }

有什么办法可以使这些图像更快地加载吗? 即使在发行版中也建立了它加载资产的速度,用户仍然可以看到它

1 个答案:

答案 0 :(得分:0)

从资产加载图像的速度对我来说似乎不错。它可能与您要显示的图像的大小和数量有关。您能否提供minimal repro来说明问题?我想了解一下您加载图像的方法的基准速度,并查看是否有改进的方法。

如上所述,您也可以尝试在显示屏幕之前使用precacheImage来预加载图像资产。一个简单的实现应如下所示:

AssetImage assetImage;

@override
void initState() {
  super.initState();

  assetImage = AssetImage('assets/yourimage.png');
  precacheImage(assetImage, context);
}

@override
  Widget build(BuildContext context) {
  // build your screen here
  Image(image: assetImage);
  // build your screen here
}