Bom dia,
-- Pelo que entendi seu problema é não estar pensando em qual design pattern aplicar, não vou nem citar, estude mais sobre o assunto.
Mas segue a solução e uma indicação para a leitura (é uma crítica construtiva!).
Solução:
- Crie uma classe (ex.: FragmentDinamico) abstrata que herde/extends de Fragment;
- Esta classe terâ um método abstrato que te retorna um objeto chamado cadastro;
- O objeto cadastro tem todas as strings dos campos que você precisará, ex.: nome, email, cpf etc;
- Você criará o seu fragment PaginaCadastro que irá herdar de FragmentDinamico e será obrigado a implementar o método abstrato que retorna o objeto cadastro;
- Na implementação deste método você faz a regra de negócio e validações para pegar os dados do EditText;
- Pronto, a estrutura tá montando, agora quanto a lógica de pegar os dados pode ser feito assim: Na activity onde vai ser gerado os fragments do tipo PaginaCadastro (dinamicamente), você vai guardando eles (em uma lista, talvez);
- Quando você quiser pegar os dados, você vai fazer um for nesta lista, invocando o nome do seu método abstrato que retornar o objeto cadastro. Mais ou menos assim:
for (PaginaCadastro paginaCadastro : paginasCadastro) {
paginaCadastro.getCadastro();
} - Dentro deste for você vai receber o objeto de cada página com o seu respectivo objeto cadastro que terá as informações do seu EditText;
Essa é a ideia. A questão do objeto Cadastro é uma ideia pensando em futuramente ter novos campos e não apenas um EditText (se for só isso, nem precisa retornar este objeto, retorna só uma String mesmo)
Indicação: https://www.casadocodigo.com.br/pages/sumario-design-patterns
Att.
Em quarta-feira, 29 de junho de 2016 15:44:17 UTC-3, Daniel Reis escreveu:
Em quarta-feira, 29 de junho de 2016 15:44:17 UTC-3, Daniel Reis escreveu:
Pessoal, boa tarde!Estou desenvolvendo um projeto, onde preciso duplicar/adicionar através de um botão O MESMO fragment várias vezes na mesma tela, é um formulário onde também precisarei recuperar os valores dos edittexts, alguém sabe como fazer isso?
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
0 comentários:
Postar um comentário