Изображение не загружается в заголовке Flutter Draw
Я новичок в флаттер-дротике и пока безуспешно пытался загрузить изображение в свой заголовок отрисовки. Кто-нибудь может пролить свет на это? Пожалуйста, найдите мой код ниже.
class MainDrawer extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Drawer(
child: ListView(
padding: EdgeInsets.zero,
children: <Widget>[
DrawerHeader(
decoration: BoxDecoration(
//color: Theme.of(context).backgroundColor,
image: DecorationImage(
image: AssetImage('assets/images/title_fb_600.png'),
fit: BoxFit.cover,
)),
child: Text("Some Text"),
//ListTile(
// leading: Icon(Icons.monetization_on),
// title: Text(
// "TRIPLE A",
// style: TextStyle(color: Colors.white, fontSize: 20),
// ),
),
ItemDrawer("Carteira Recomendada", Icons.star, 16),
ItemDrawer("Carteira R\$10", Icons.ten_k, 16),
ItemDrawer("Minha Carteira", Icons.favorite, 16),
ItemDrawer("Notícias", Icons.new_releases, 16),
ItemDrawer("Minha Conta", Icons.account_circle, 16),
ItemDrawer("Configurações", Icons.settings, 16),
],
),
);
}
}
Мой pubspec.yaml....
> flutter:
>
uses-material-design: true
>
assets:
> - assets/images/title3a_fb_600.png
И структура папок...
1 ответ
Ваш файл pubspec выглядит хорошо. Я предполагаю, что вы хотите включить только это изображение в качестве актива.
Попробуйте использовать этот пакет и замените здесь класс DrawerHeader компонентом ProgressiveImage .https://pub.dev/packages/progressive_image
Этот пакет помогает вам кэшировать изображение, чтобы предотвратить его повторную загрузку, а также добавляет анимацию размытия при загрузке этого ресурса.
Если вам нужно наслоить заголовок ящика (и добавить другую информацию, такую как значок аватара или информацию об электронной почте), вы можете добавить этот компонент в коллекцию стека , а затем убедитесь, что ProgressiveImage является первым в стеке .
Если вам также нужно установить пользовательскую высоту для заголовка ящика, обязательно оберните этот стек контейнером и вручную установите высоту этого элемента.