Новое в флаттер. Как отобразить сетевое изображение во Flutter с помощью cached_network_image и получить изображение из локального imageAsset в качестве заполнителя? - PullRequest
0 голосов
/ 21 февраля 2020

У меня есть этот динамический c локальный AssetImage из файла model / event.dart, но если imagePath пуст, я хочу отобразить изображение из сети с cached_network_image.

           child: Stack(
              children: <Widget>[
                ClipRRect(
                  borderRadius: BorderRadius.circular(20.0),
                  child: Image(
                    height: 200.0,
                    /* width: 280.0, */
                    width: MediaQuery.of(context).size.width * 0.80,
                    image: AssetImage(event.imagePath),
                    fit: BoxFit.cover,
                  ),
                ),
              ],
            ),

1 Ответ

1 голос
/ 21 февраля 2020

из cached_network_image вы можете сделать что-то вроде этого

 CachedNetworkImage(
  imageUrl: "http://via.placeholder.com/200x150",
  imageBuilder: (context, imageProvider) => Container(
    decoration: BoxDecoration(
      image: DecorationImage(
          image: imageProvider,
          fit: BoxFit.cover,
          colorFilter:
              ColorFilter.mode(Colors.red, BlendMode.colorBurn)),
    ),
  ),
  placeholder: (context, url) => placeholder: (context, url) => {return Image.asset('assets/img/my_placeholder.png');},
  errorWidget: (context, url, error) => Icon(Icons.error),
),

иначе вы можете использовать fadein image как как показано ниже FadeInImage(image: NetworkImage(url), placeholder: AssetImage(assetName)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...