6
respostas

Imagem não aparece no emulador

Já tentei de diversas formas, mas a imagem não aparece no emulador. Fiz o teste e puxando do network funciona, porém quando ela está no asset não.

Código na main.dart:

import 'package:flutter/material.dart';

void main() => runApp(BytebankApp());

class BytebankApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: Text('Dashboard'),
        ),
        body: Column(
          children: <Widget>[
            Image.asset('images/bytebank_logo.png')
          ],
        ),
      ),
    );
  }
}

Edição na pubspec:

  # To add assets to your application, add an assets section, like this:
  assets:
    - images/bytebank_logo.png
6 respostas

Testei seu código aqui e me parece que está certo, aqui carregou a imagem. Pensei em 2 possibilidades:

  1. indentação no pubspec ou
  2. Falta o arquivo na caminho correto: dentro da pasta principal do projeto, criar uma pasta images com a imagem dentro ...\bytebank\images\bytebank_logo.png

Além do que a Monica disse, também é importante fazer a publicação do pubspec, utilizando o "Pub get" ou o "Pub upgrade" para atualizar as referências dos pacotes. Isso é feito no arquivo pubspec.yaml, pelo IntelliJ.

O meu também não estava exibindo e só funcionou depois que atualizei.

Tentei tanto o "Pub get" quanto o "Pub upgrade". Ambas não exibiram a imagem. Quanto ao pubspec eu refiz e revi tudo, mas nada deu certo. O caminho também está criado corretamente identico ao indicado na aula. Até tentei pegar o próprio código do professor na aula e só colar no IntelliJ e não funcionou nem assim. Vou verificar se tendo a imagem em outro diretório funciona.

Tive o mesmo problema.

Removi todo o espaço no pubspec.yaml referente as linhas do assets e as refiz.

  # To add assets to your application, add an assets section, like this:
  assets:
    - images/bytebank_logo.png

executei o "flutter pub get" novamente e precisei reiniciar a execução do app. Só com hot-reload ou hot-restart não resolveu.

Dependendo da sua versão do flutter é necessário colocar a propria pasta assets antes da url

- assets/images/bytebank_logo.png

Após isso também é necessário fazer o flutter pub get igual outros usuários falaram e então dar um full restart na aplicação.

Bom dia Ryendel, tudo bom?

Conseguiu solucionar seu problema? Aguardando seu retorno.

Desde já, agradeço.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software