图片

添加外部图片

需要在文件pubspec.yaml中添加:

flutter:
  assets:
  # 这里添加你的外部文件夹,这里以根目录/assets举例
  # 可以添加任何文件
    - assets/

系统图片

// 使用本地路径的图片
return Image.file(File(filePath));

assets图片

// 使用assets配置目录下的图片
return Image.assets("/assets/xxx.jpg");

网络图片

return Image.network("https://xxx.jpg");

添加加载动画

return Image.network(
  "https://xxx.jpg",
  frameBuilder:(context, child, frame, wasSynchronouslyLoaded){
    if (wasSynchronouslyLoaded) {
      return child;
    }
    return AnimatedSwitcher(
      duration: const Duration(milliseconds: 200),
      child: frame != null ? child : // 加载的内容,比如加载图片/骨架图
    );
  },
);

修改缓存大小

Note

如果图片尺寸很大并且数量很多,如果直接显示可能会导致占用过多内存

return Image.assets(
  "/assets/xxx.jpg",
  cacheWidth: /** 限制图片缓存的宽度 */,
  // 或者使用cacheHeight
);