1
resposta

Erro ao introduzir widgets no runApp

Nas aulas o instrutor coloca os widgets direto no runApp, mas quando tento fazer isso ocorre o erro "the function MyApp is not defined". Na minha instalação estou sendo obrigado a criar a classe MyApp que terá como retorno todo o código que quero executar. Conforme Abaixo.

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

class MyApp extends StatelessWidget {
  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return Column(
      children: <Widget>[
        Text(
          'Deliver features faster',
          textDirection: TextDirection.ltr,
        ),
        Text(
          'Craft beautiful UIs',
          textDirection: TextDirection.ltr,
        ),
        Text(
          'Craft beautiful UIs',
          textDirection: TextDirection.ltr,
        ),
        Column(
          children: <Widget>[
            Text(
              'Craft beautiful UIs',
              textDirection: TextDirection.ltr,
            ),
          ],
        ),
        Expanded(
          child: FittedBox(
            fit: BoxFit.contain, // otherwise the logo will be tiny
            child: const FlutterLogo(),
          ),
        ),
      ],
    );
  }
}

Quando tento executar da forma que o instrutor está ensinando, conforme código abaixo, ocorre o erro.

void main() => runApp(MaterialApp(
  home: Text('olá'),
));
1 resposta

Oi Antônio, tudo bem?

Não deveria apresentar o erro, a não ser que o código ficasse da seguinte maneira:

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

E não tivesse a implementaçãode MyApp, aí realmente o compilador iria reclamar e indicar a necessidade da implementação dessa referência, apenas essa amostra:

void main() => runApp(MaterialApp(
  home: Text('olá'),
));

Deve funcionar normalmente, se possível, tenta manter exatamente o mesmo código que estava quando apresentou o problema e compartilha comigo via GitHub, dessa forma, consigo replicar no meu ambiente e te passar um feedback com mais precisão.

[]s