Невозможно загрузить изображение в Flutter

#image #flutter #dart #assets #flutter-dependencies

#изображение #flutter #dart #ресурсы #flutter-зависимости

Вопрос:

Я новичок в Flutter. Когда я попытался загрузить ресурсы, я столкнулся с проблемой.

Я проверил файл pubspec.yaml на предмет идентификации, но не смог найти никаких проблем.

Я проверил указанный путь.

Я также пробовал другие изображения, даже расширение (.png, .jpg)

Это исключение:

 The following assertion was thrown resolving an image codec:
Unable to load asset: assets/images/pink_flower.jpg

When the exception was thrown, this was the stack: 
#0      PlatformAssetBundle.load (package:flutter/src/services/asset_bundle.dart:225:7)
<asynchronous suspension>
#1      AssetBundleImageProvider._loadAsync (package:flutter/src/painting/image_provider.dart:668:31)
#2      AssetBundleImageProvider.load (package:flutter/src/painting/image_provider.dart:651:14)
#3      ImageProvider.resolveStreamForKey.<anonymous closure> 
(package:flutter/src/painting/image_provider.dart:504:13)
...
 

Это файл .yaml

 name: flutterproject
description: VFL Lisesi uygulaması flutter ile.

publish_to: 'none'

version: 1.0.0 1

environment:
sdk: ">=2.7.0 <3.0.0"

dependencies:
flutter:
    sdk: flutter
cupertino_icons: ^1.0.0

dev_dependencies:
flutter_test:
    sdk: flutter
    
flutter:

uses-material-design: true

assets:
    - assets/images/flower2.png
    - assets/images/pink_flower.jpg

fonts:
    - family: Montserrat
    fonts:
        - asset: assets/fonts/montserrat_black.ttf
        weight: 300
        - asset: fonts/montserrat_black_italic.ttf
        weight: 300
        - asset: fonts/montserrat_bold.ttf
        weight: 600
    - family: Trajan Pro
    fonts:
        - asset: fonts/TrajanPro.ttf
        - asset: fonts/TrajanPro_Bold.ttf
        weight: 700
 

ImageWidget

 import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';

class ImageBanner extends StatelessWidget {

final String _path;

ImageBanner(this._path);

@override
Widget build(BuildContext context) {
    // TODO: implement build
    return Container(
    constraints: BoxConstraints.expand(
        height: 300.0,
    ),
    child: Image.asset(
        _path,
        fit: BoxFit.cover,
    ),
    );
}

}
 

вызов ImageWidget

 ImageWidget('assets/images/pink_flower.jpg')
 

Спасибо за любую помощь!

Комментарии:

1. Вы запустили flutter pub get и выполнили полный перезапуск?

2. Да, я только что перезапустил, и это исправлено.

Ответ №1:

Пожалуйста, убедитесь, что ваш отступ выглядит следующим образом:

введите описание изображения здесь

Ответ №2:

Всякий раз, когда вы вносите изменения в свой pubspec.yaml файл, обязательно выполняйте эти два шага впоследствии.

  1. Выполнить flutter pub get .
  2. Остановите текущий сеанс и выполните полный перезапуск.

Ответ №3:

неправильный отступ

исправить:

 assets:
  - assets/images/flower2.png
  - assets/images/pink_flower.jpg