列表的颤动预加载图像
flutter preload image of list
我的 flutter 应用程序想通过调用 image.network() 来显示来自 firebase 的图像。但是图像显示有点晚。
请帮助解决这个问题。如何预加载图片或提前将图片存入缓存?
child: ListTile(
leading: Image.network(
food.thumbnail,
width: 60.0,
),
title: Text(
food.foodName + " " + '$' + food.foodPrice.toString()),
subtitle: Text('編碼: ' + food.foodCode),
onTap: () {}),
更新:
child: ListTile(
leading:
Image(image: new CachedNetworkImageProvider(food.thumbnail),
width: 60.0,),
title: Text(
food.foodName + " " + '$' + food.foodPrice.toString()),
subtitle: Text('編碼: ' + food.foodCode),
onTap: () {}),
),
请查看我使用 CachedNetworkImageProvider 的更新,图像也显示延迟。我想我犯了一些错误。请大家帮忙
对于这种情况,flutter中有一个开箱即用的Widget,叫做FadeInImage
。你可以这样使用它:
FadeInImage(
height: 200.0, // Change it to your need
width: 300.0, // Change it to your need
fit: BoxFit.cover,
placeholder: AssetImage("assets/company_logo.jpg"),
image: NetworkImage(your_image_url),
),
这里重要的 属性 是 placeHolder
,您可以使用存储在资产中的任何离线图像,例如您的公司徽标,当图像加载时,这将淡出,新图像将淡入前导一个不错的用户体验。
我的 flutter 应用程序想通过调用 image.network() 来显示来自 firebase 的图像。但是图像显示有点晚。 请帮助解决这个问题。如何预加载图片或提前将图片存入缓存?
child: ListTile(
leading: Image.network(
food.thumbnail,
width: 60.0,
),
title: Text(
food.foodName + " " + '$' + food.foodPrice.toString()),
subtitle: Text('編碼: ' + food.foodCode),
onTap: () {}),
更新:
child: ListTile(
leading:
Image(image: new CachedNetworkImageProvider(food.thumbnail),
width: 60.0,),
title: Text(
food.foodName + " " + '$' + food.foodPrice.toString()),
subtitle: Text('編碼: ' + food.foodCode),
onTap: () {}),
),
请查看我使用 CachedNetworkImageProvider 的更新,图像也显示延迟。我想我犯了一些错误。请大家帮忙
对于这种情况,flutter中有一个开箱即用的Widget,叫做FadeInImage
。你可以这样使用它:
FadeInImage(
height: 200.0, // Change it to your need
width: 300.0, // Change it to your need
fit: BoxFit.cover,
placeholder: AssetImage("assets/company_logo.jpg"),
image: NetworkImage(your_image_url),
),
这里重要的 属性 是 placeHolder
,您可以使用存储在资产中的任何离线图像,例如您的公司徽标,当图像加载时,这将淡出,新图像将淡入前导一个不错的用户体验。