Livro 3 - Projeto Agenda de Contatos - Parte 1
4. Configurações iniciais do projeto
4.3. Criação das classes do aplicativo
Nesta etapa vamos preparar as classes para a construção do aplicativo. A template Fragment + ViewModel cria três classes durante a inicialização do projeto: MainActivity, MainActivityFragment e MainActivityViewModel. Se você realizou as etapas conforme solicitado no Capítulo 3 o seu projeto deve possuir essas três classes como mostra a figura:
Figura 8 Classes criadas durante a inicialização do projeto
Naturalmente, podemos associar cada fragmento a uma atividade separada, mas neste projeto vamos usar apenas uma atividade, e adicionar ou remover dinamicamente fragmentos nela. Dessa forma, siga os passos abaixo para a criação inicial dos dois fragmentos restantes:
- Adicione dois novos fragmentos ao pacote “ui.main” do projeto. Para adicionar use o menu de contexto sobre o pacote e selecione New -> Fragment -> Fragment (with View Model)
Figura 9 Menu de contexto para inserir um novo fragmento com a template Fragment + ViewModel
- Na janela “New Android Component” modifique o campo Fragment Name para AddEditFragment. Clique em Finish
- Este fragmento será usado para criar a interface para adicionar um novo contato ou editar um já existente
Figura 10 Janela de criação do novo fragmento
- Repita os passos acima e crie o DetailFragment
- Este fragmento será usado para exibir os dados de um contato e fornecer itens de menu para editar ou excluir o contato.
- Adicione também as seguintes classes para a criação da lista de contatos, para adicionar uma nova classe clique com o botão direito do mouse sobre a pasta ui.main e selecione New > Java Class:
Figura 11 Menu de contexto para adicionar uma nova classe Java
-
- Na nova janela coloque o nome da nova classe e clique em OK. Crie as classes:
- ContactsAdapter – adaptador que será usado para preencher uma RecyclerView com uma lista de contatos
- ItemDivider – classe para desenhar uma linha horizontal entre os itens da RecyclerView
- Na nova janela coloque o nome da nova classe e clique em OK. Crie as classes:
-
Crie um novo pacote para o projeto. Para fazer isso, clique com o botão direito do mouse sobre o pacote principal e selecione New > Package. Coloque o nome como “data”.
Figura 12 Criando um novo pacote
- Clique com o botão direito sobre o novo pacote (pasta) criada e adicione as seguintes classes:
- Contact – classe representando um contato no banco de dados
- ContactsDAO – classe usada para manipular as iterações ao banco de dados como consultas e atualizações. DAO significa Database Acess Object.
- ContactsDatabase – classe para fazer a criação do banco de dados
- ContactsRepository – classe para servir como uma API de acesso ao banco para o resto da aplicação.
Após a criação das classes iniciais, o projeto deve ficar estruturado como:
Figura 13 Estrutura final das classes do projeto