Картинка из assets в Flutter
Иллюстрации и иконки, которые едут вместе
с приложением, кладут в каталог
'assets' рядом с lib.
Flutter не подхватывает файлы сам:
каждый путь нужно перечислить в
pubspec.yaml в секции
flutter: assets:.
После правки выполните flutter pub get
или hot restart. На экране картинку
выводят
Image
через фабрику Image.asset с тем
же строковым путём, что в yaml:
flutter:
uses-material-design: true
assets:
- assets/logo.png
Параметр fit вписывает картинку
в рамку width и height.
Картинку из этого пути показывают так:
import 'package:flutter/material.dart';
void main() {
runApp(const MaterialApp(home: AssetImagePage()));
}
class AssetImagePage extends StatelessWidget {
const AssetImagePage({super.key});
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: const Text('Assets')),
body: Center(
child: Image.asset(
'assets/logo.png',
width: 120,
height: 120,
fit: BoxFit.contain,
),
),
);
}
}
Положите любой png-файл как
'assets/banner.png', пропишите
путь в pubspec.yaml и покажите
его на всю ширину экрана с
fit: BoxFit.cover и высотой 160.