Событие прогресса загрузки Image.network loadingBuilder равно нулю - PullRequest
0 голосов
/ 30 сентября 2019

Я пытаюсь использовать аргумент конструктора *1001*Image.network.

Пока изображение загружается, я хочу показать CircularProgressIndicator с его значением, установленным наКоэффициент загруженности делится на ожидаемый размер файла. Я ожидал, что смогу сделать это, используя параметры ImageChunkEvent cumulativeBytesLoaded, expectedTotalBytes.

Я нашел образец в документации:

В следующем примере loadingBuilder используется для отображения CircularProgressIndicator при загрузке изображения по сети.

Image.network(
  'https://example.com/image.jpg',
  loadingBuilder: (BuildContext context, Widget child, ImageChunkEvent loadingProgress) {
    if (loadingProgress == null)
      return child;
    return Center(
      child: CircularProgressIndicator(
        value: loadingProgress.expectedTotalBytes != null
            ? loadingProgress.cumulativeBytesLoaded / loadingProgress.expectedTotalBytes
            : null,
      ),
    );
  },
),

Но проблема в том, что loadingProgress всегда null, так что весь loadingBuilder шарад, который я делаю, напрасен.

Почему ImageChunkEvent loadingProgress не передается в функцию loadingBuilder с реальными значениями?

1 Ответ

0 голосов
/ 30 сентября 2019

Не забудьте поместить или gif в папку assets и процитировать ее в pubspec.yaml

FadeInImage.assetNetwork(
  placeholder: 'assets/loading.gif',
  image: 'https://backend.example.com/image.png',
);

Для получения дополнительной информации: https://api.flutter.dev/flutter/widgets/FadeInImage-class.html

...