Класс NetworkImage
Класс NetworkImage хранит строку url,
масштаб scale и необязательные headers
для HTTP запроса. Его передают в
Image
или в DecorationImage.
Синтаксис
NetworkImage(
'https://example.com/pic.png',
scale: 1.0,
headers: const {'Accept': 'image/*'},
)
Параметры
| Параметр | Описание |
|---|---|
url |
Адрес картинки. |
scale |
Масштаб: сколько пикселей файла приходится на один логический. |
headers |
Заголовки HTTP-запроса, например ключ доступа. |
Пример
Давайте создадим провайдер и передадим его в Image:
import 'package:flutter/material.dart';
void main()
{
const provider = NetworkImage('https://example.com/pic.png');
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Image(
image: provider,
width: 160,
fit: BoxFit.contain,
),
),
),
),
);
}
На экране появится картинка, загруженная с
https://example.com/pic.png.
Пример
Давайте сравним строковое представление двух адресов:
void main()
{
const first = NetworkImage('https://example.com/pic.png');
const second = NetworkImage('https://example.com/other.png');
print(first.url == second.url);
}
Результат выполнения кода
false
Смотрите также
-
метод
network,
который сразу строит виджет по URL -
класс
AssetImage,
который читает локальный файл из активов -
функция
precacheImage,
которая кэшируетNetworkImageдо показа -
виджет
FadeInImage,
который показывает заглушку при загрузке сети