【问题标题】:precacheImage with SvgPicture in FlutterFlutter 中带有 SvgPicture 的 precacheImage
【发布时间】:2020-08-01 20:13:13
【问题描述】:

如何在flutter_svg: 0.17.4 包中使用precacheImage()SvgPicture

我想在后台加载 svg 图片


  Container _graphicSection() {
    final String graphic = 'assets/graphic/two_people.svg';
    return Container(
        child: Column(
      crossAxisAlignment: CrossAxisAlignment.start,
      mainAxisSize: MainAxisSize.max,
      mainAxisAlignment: MainAxisAlignment.start,
      children: <Widget>[
        SvgPicture.asset(
          graphic,
          height: 150,
          alignment: Alignment.center,
        )
      ],
    ));
  }

有人知道如何使用precachImage() 函数加载 svg 图片吗?

【问题讨论】:

  • 它返回一个Future,所以在这种情况下总是使用FutureBuilder
  • 你能给我举个例子吗?
  • 有大量关于如何使用FutureBuilder 的示例,只需在谷歌上搜索flutter FutureBuilder
  • 不,你错了,问题是 precachePicture 函数不支持我的 SvgPicture
  • 和正常的SvgPicture.asset 工作正常吗?

标签: image flutter svg dart


【解决方案1】:

flutter_svg 现在有一个名为precachePicture() 的函数,您可以像这样使用它:

Future<void> loadPictures() async {
  await precachePicture(
    ExactAssetPicture(SvgPicture.svgStringDecoder, 'assets/graphic/two_people.svg'),
    context,
  ); //here context can also be null    
}

【讨论】:

    猜你喜欢
    • 2020-07-26
    • 2019-09-26
    • 2020-03-31
    • 2020-07-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-27
    • 1970-01-01
    相关资源
    最近更新 更多