Метод file
Метод file виджета
Image создаёт
Image
с провайдером FileImage.
В аргумент file передают объект File из dart:io.
На веб-платформе этот конструктор недоступен.
Синтаксис
Image.file(
File('/tmp/pic.png'),
width: 120,
height: 80,
fit: BoxFit.contain,
)
Параметры
| Параметр | Описание |
|---|---|
file |
Файл с картинкой на диске. Обязательный аргумент. |
width |
Ширина в логических пикселях. |
height |
Высота в логических пикселях. |
fit |
Способ вписать картинку. Принимает
BoxFit.
|
scale |
Масштаб пикселей файла относительно логических единиц. |
errorBuilder |
Виджет, если файл не прочитался или формат не поддерживается. |
Пример
Давайте покажем файл, путь к которому уже известен:
import 'dart:io';
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Image.file(
File('/tmp/pic.png'),
width: 200,
fit: BoxFit.contain,
),
),
),
),
);
}
На экране появится содержимое файла /tmp/pic.png,
вписанное по ширине 200 пикселей.
Пример
Давайте зададим фиксированную высоту и обрежем лишнее:
import 'dart:io';
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Image.file(
File('/tmp/pic.png'),
height: 100,
width: double.infinity,
fit: BoxFit.cover,
),
),
),
),
);
}
На экране полоса высотой 100 заполнится
фрагментом картинки по всей ширине экрана.