Professor, como faço para criar um formulário multi-page, utilizando o changeNotifier e o provider? Queria fazer um formulário multi página, guardar os dados e depois de finalzar o formulário pegar os dados e jogar em um BD, porém sempre que eu faço um multiform eu acabo me perdendo na hora de transferir os dados para mais de 1 tela ou para mais de 1 obj.
Você pode criar um controlador / store que contenha os dados de todo o formulário. Esse controlador / store deve ter uma instância única, neste caso, o provider pode te ajudar nisso. Para seu formulário, você pode criar várias telas, onde cada tela contém uma parte do formulário. No tap do botão next, você irá fazer as validações desta parte do formulário e salvar as informações na store compartilhada (recuperando ela via Provider). Na próxima tela, faz a mesma coisa até finalizar o formulário. Neste último controlador de tela, você pode recuperar o provider e enviar os dados para o BD. Outra forma, sem o Provider, seria você criar uma instância da Store do seu formulário e passar essa instância via construtor para as próximas telas. Assim, você sempre terá o mesmo objeto.
@@drantunes Entendi, irei realizar da forma que o senhor falou e ver o resultado, por curiosidade, existe alguma aplicação exemplo que eu possa olhar?. Obrigado a atenção professor!
aula top, to tentando fazer esse esquema abaixo, mas nao consigo tentei usar o Flexible/Expanded, tem que ficar desse jeito "-.-.=" o traço é o textF e . SizedBox(w20) e o = é a Column com 2 TextForm, eu consigo fazer se eu definir um tamanho pro TextFormField, so que quando giro a tela vira uma bagunça .. Column( children:[ Row( children:[ TextFormFild(text:"mm"), SizedBox(width:10), TextFormFild(text:"0"), SizedBox(width:10), Column( children:[ TextFormFild(text:"1"), TextFormFild(text:"128"), ], ), ], ), ], )
Ola professor, tive problemas no metodo comprar, quando eu clico para abrir a moeda selecionada na listagem de moedas, o metodo comprar é executado e o _form.currentState esta null e dispara o erro "validate Null check operator used on a null value", ou seja nem cliquei no botao de comprar. Ele chamou a metodo comprar por algum motivo. E descobri que o problema era no onPressed, estava passando a chamada do metodo comprar com os (), e o certo é sem os (), igual no javascript. fica a dica ai pro pessoal, caso ocorra com alguem ai. =D vlw e parabens pela aula.
Valeu Junão, isso é comum mesmo. Uma dica se quiser chamar a função no onPressed é usar uma função anônima, algo como () => comprar(). Abraço e sucesso!
Sou trabalho com React web a 5 anos, estou vendo vários video de flutterr, para mim com design e desenvolvedor a parte mais duida que percebo até a gora no flutter é a indentação é muito ruim visualmente poluida de mais olha que você fez com único campo de input, ficou imaginando se tivesse uns 10 campos como é ruim esta indentação...
Excelente aula professor!
Que aula, professor! Maratonando tudo 🍿
Obg professor pela disponibilidade. Ótima didática...
Excelente aula professor, muito grato por este conteúdo. Aprendendo demais. Grande abraço
Eu que agradeço!!!
Professor, como faço para criar um formulário multi-page, utilizando o changeNotifier e o provider? Queria fazer um formulário multi página, guardar os dados e depois de finalzar o formulário pegar os dados e jogar em um BD, porém sempre que eu faço um multiform eu acabo me perdendo na hora de transferir os dados para mais de 1 tela ou para mais de 1 obj.
Você pode criar um controlador / store que contenha os dados de todo o formulário. Esse controlador / store deve ter uma instância única, neste caso, o provider pode te ajudar nisso.
Para seu formulário, você pode criar várias telas, onde cada tela contém uma parte do formulário. No tap do botão next, você irá fazer as validações desta parte do formulário e salvar as informações na store compartilhada (recuperando ela via Provider).
Na próxima tela, faz a mesma coisa até finalizar o formulário. Neste último controlador de tela, você pode recuperar o provider e enviar os dados para o BD.
Outra forma, sem o Provider, seria você criar uma instância da Store do seu formulário e passar essa instância via construtor para as próximas telas. Assim, você sempre terá o mesmo objeto.
@@drantunes Entendi, irei realizar da forma que o senhor falou e ver o resultado, por curiosidade, existe alguma aplicação exemplo que eu possa olhar?. Obrigado a atenção professor!
@@nickitowl2840 Nenhuma na mão :(
Existe como deixar a borta de um textfield em degradê?
É possível, mas não muito simples... O ideal seria criar uma classe que herda de InputBorder... ali você iria re-implementar as bordas da sua forma.
aula top, to tentando fazer esse esquema abaixo, mas nao consigo tentei usar o Flexible/Expanded, tem que ficar desse jeito "-.-.=" o traço é o textF e . SizedBox(w20) e o = é a Column com 2 TextForm, eu consigo fazer se eu definir um tamanho pro TextFormField, so que quando giro a tela vira uma bagunça ..
Column(
children:[
Row(
children:[
TextFormFild(text:"mm"),
SizedBox(width:10),
TextFormFild(text:"0"),
SizedBox(width:10),
Column(
children:[
TextFormFild(text:"1"),
TextFormFild(text:"128"),
],
),
],
),
],
)
Sim, para responsividade você tem que usar Flexible ou Expanded + Spacer ajustando a propriedade flex de todos os elementos
Ola professor, tive problemas no metodo comprar, quando eu clico para abrir a moeda selecionada na listagem de moedas, o metodo comprar é executado e o _form.currentState esta null e dispara o erro "validate Null check operator used on a null value", ou seja nem cliquei no botao de comprar. Ele chamou a metodo comprar por algum motivo.
E descobri que o problema era no onPressed, estava passando a chamada do metodo comprar com os (), e o certo é sem os (), igual no javascript. fica a dica ai pro pessoal, caso ocorra com alguem ai. =D vlw e parabens pela aula.
Valeu Junão, isso é comum mesmo. Uma dica se quiser chamar a função no onPressed é usar uma função anônima, algo como () => comprar(). Abraço e sucesso!
Sou trabalho com React web a 5 anos, estou vendo vários video de flutterr, para mim com design e desenvolvedor a parte mais duida que percebo até a gora no flutter é a indentação é muito ruim visualmente poluida de mais olha que você fez com único campo de input, ficou imaginando se tivesse uns 10 campos como é ruim esta indentação...
Normalmente, criamos um widget de input com a UI e reaproveitamos.