Buscar

A classe FutureBuilder é um stateful widget,usado para facilitar a construção de aplicativos por meio de programação assíncrona em Dart/Flutter. O ...

A classe FutureBuilder é um stateful widget,usado para facilitar a construção de aplicativos por meio de programação assíncrona em Dart/Flutter.

O trecho de código a seguir mostra um exemplo de utilização desse recurso:

FutureBuilder(

future: getFutureDados(),

builder: (context, snapshot) {

if (snapshot.hasData) {

return Center(

child: Text(

snapshot.data,

style: TextStyle(fontSize: 20.0),

),

);

} else {

return Center(

child: CircularProgressIndicator(),

);

}

}

)

Nesse código de exemplo, a propriedade "future: getFutureDados()" determina a chamada de uma função assíncrona chamada getFutureDados(), que fornecerá um dado que deve ser exibido em um widget Text. Enquanto o resultado esperado não estiver disponível, um widget do tipo CircularProgressIndicator será exibido ao usuário.

Qual das alternativas a seguir, apresenta uma implementação correta para a função getFutureDados() que retorne a String 'Dados recebidos...' após uma espera de dez segundos?

A. 

String getFutureDados() =>

await Future.delayed(Duration(seconds: 10), () {

return 'Dados recebidos...';

});

B. 

Future getFutureDados() =>

await Future.delayed(Duration(seconds: 10), () {

return 'Dados recebidos...';

});

C. 

Future getFutureDados() async => return 'Dados recebidos...';

D. 

Future getFutureDados() async =>

Future.delayed(Duration(seconds: 10);

E. 

Future getFutureDados() async =>

await Future.delayed(Duration(seconds: 10), () {

return 'Dados recebidos...';

});


Respostas

User badge image

Ed Verified user icon

Analisando as opções fornecidas: A. `String getFutureDados() => await Future.delayed(Duration(seconds: 10), () { return 'Dados recebidos...'; });` B. `Future getFutureDados() => await Future.delayed(Duration(seconds: 10), () { return 'Dados recebidos...'; });` C. `Future getFutureDados() async => return 'Dados recebidos...';` D. `Future getFutureDados() async => Future.delayed(Duration(seconds: 10);` E. `Future getFutureDados() async => await Future.delayed(Duration(seconds: 10), () { return 'Dados recebidos...'; });` A opção correta é a alternativa E. `Future getFutureDados() async => await Future.delayed(Duration(seconds: 10), () { return 'Dados recebidos...'; });`, pois utiliza corretamente o `await` para aguardar a conclusão da operação assíncrona `Future.delayed` e retorna a String 'Dados recebidos...' após uma espera de dez segundos.

0
Dislike0

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Responda

SetasNegritoItálicoSublinhadoTachadoCitaçãoCódigoLista numeradaLista com marcadoresSubscritoSobrescritoDiminuir recuoAumentar recuoCor da fonteCor de fundoAlinhamentoLimparInserir linkImagemFórmula

Para escrever sua resposta aqui, entre ou crie uma conta

User badge image

Mais conteúdos dessa disciplina