dart 如何使用flutter_svg 2.0及以上版本预缓存SVG图像?

soat7uwm  于 2023-06-03  发布在  Flutter
关注(0)|答案(1)|浏览(213)

我最近将flutter_svg更新到了2.0.5版本,在预缓存SVG图像时遇到了一些问题,这在以前的版本中是没有的。我曾经使用precachePicture函数和SvgPicture.svgStringDecoderOutsideViewBoxBuilder方法预缓存SVG图像,如下所示:

precachePicture(ExactAssetPicture(SvgPicture.svgStringDecoderOutsideViewBoxBuilder,
    "assets/images/file.svg"), context);

但是,随着最近的更新,似乎precachePictureSvgPicture.svgStringDecoderOutsideViewBoxBuilder都不再可用。我曾试图在更新的版本中找到替代或类似的功能,但到目前为止我没有运气。
有没有人对如何在更新的flutter_svg包中预缓存SVG图像有什么建议?是否有新的函数或方法可供使用?
提前感谢您的帮助!

wixjitnu

wixjitnu1#

感谢@VictorEronmosele的github问题。我的问题解决了

var loader = SvgAssetLoader(svgPath);
  await svg.cache
      .putIfAbsent(loader.cacheKey(null), () => loader.loadBytes(null));

相关问题