如何避免资产中的图像“弹出”在Flutter中的屏幕上

时间:2019-07-26 16:39:40

标签: flutter

使用Image小部件显示资产中的图像 时,它们往往会在Text等其他小部件之后几毫秒内“弹出”到屏幕上。

由于图像来自资产,是否有办法在屏幕上显示图像?所以它不会弹出(或淡入)视图吗?

这里是一个简单的例子,导致此:

Column(
    children: <Widget>[
      Text('This text will be visible a few ms before the image renders',),
      Image.asset('images/lake.jpg',),
    ],
  )

1 个答案:

答案 0 :(得分:0)

对我来说,解决方案是在小部件的build函数中调用precacheImage,该小部件是需要显示图像的小部件的祖先。

我在runApp中提供给main.dart的小部件中调用它。

@override
  Widget build(BuildContext context) {
    precacheImage(AssetImage('images/lake.jpg'), context);
    return MaterialApp(...);
}