Prévia do material em texto
ANDROID CRUD NA PRÁTICA – Parte 1 PROF. DRECO 2022 1 Listando os amigos 5 O cadastro de amigos 4 O Banco de Dados e suas nuances 3 A tela de cadastro de um amigo 2 Preparando o Projeto Amigos 1 PASSO A PASSO 2 Algumas dicas finais 10 Limpando os dados 9 Melhorias 8 Excluindo um amigo 7 Alterando dados de um amigo 6 PASSO A PASSO 3 1. PREPARANDO O PROJETO AMIGOS Classes que utilizaremos: DbAmigos – classe que define o objeto amigo, seus atributos e suas ações DbAmigosAdapter – classe com o adaptador para ligação entre os dados e a visualização no aplicativo DbAmigosDAO – classe para conexão e manipulação dos dados, que gerencia os dados junto com o SQLite 4 1. PREPARANDO O PROJETO AMIGOS Classes que utilizaremos: DbAmigosHolder – classe para definição do metadados e sua visualização DbAmigosGateway – classe para ligação do banco com a aplicação DbAmigosHelper – classe para gerenciar a criação do nosso banco e a atualização do SQLite MainActivity – classe principal do aplicativo 5 1. PREPARANDO O PROJETO AMIGOS XML que utilizaremos: activity_main – tratamento da aplicação activity_listagem – listagem dos dados dos amigos activity_cadastrar_amigo – tratamento da população de dados dos amigos activity_item_dados – tratamento dos dados de um determinado amigo 6 1. PREPARANDO O PROJETO AMIGOS Ponta-pé inicial! Criar o projeto PrjCRUD Utilize o layout BASIC, que possui elementos que auxiliarão no projeto. Características: Toolbar (fica no topo da Activity) Botão flutuante Ponto relevante do projeto com layout BASIC: Utilização include de outros layouts 7 Mão-na-massa 01 Agora é com você! Tempo: 10min Crie seu projeto PrjCrud com o layout BASIC Teste os botões Ajuste o projeto 8 Mão-na-massa 01 Estudando e adaptando os objetos criados automaticamente pelo layout BASIC No XML do projeto, altere o botão de e-mail para um botão de adicionar, ficará assim: (...) app:srcCompat="@android:drawable/ic_input_add" (...) Utilizaremos este botão para a inserção de novos registros no banco de dados Refatore o arquivo content_main para activity_listagem 9 Mão-na-massa 01 No activity_main.xml, altere o include do activity_listagem colocando um ID e o atributo de visibilidade. Ficará assim: <include android:id="@+id/include_listagem" layout="@layout/activity_listagem" android:visibility="visible"/> 10 Mão-na-massa 01 No MainActivity.java, altere o texto de mensagem do click do botão fab Está assim: Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG) .setAction("Action", null).show(); Sugestão: Snackbar.make(view, "Aguarde a implantação da inclusão.", Snackbar.LENGTH_LONG) .setAction("Ação", null).show(); 11 Observações O activity_main será a base das páginas do projeto A implantação será gradativa e com a criação das classes As páginas FIRST FRAGMENT e SECOND FRAGMENT serão ajustadas no decorrer do projeto Cada include no XML do main corresponde a um bloco de include, eles são separados 12 2. A TELA DE CADASTRO DE UM AMIGO Vamos desenhar uma tela simples, para mostrar o uso do BD. Os dados que serão gravados do amigo são: NOME e CELULAR. Passos importantes: Criar um layout novo, denominado ACTIVITY_CADASTRAR_AMIGO Criar os campos NOME e CELULAR Criar o botão CANCELAR e incluir o código JAVA voltando para o ACTIVITY_MAIN e escondendo o ACTIVITY_CADASTRAR_AMIGO 13 2. A TELA DE CADASTRO DE UM AMIGO Passos importantes - continuação: Criar o botão SALVAR e incluir o código JAVA voltando para o ACTIVITY_MAIN e escondendo o ACTIVITY_CADASTRAR_AMIGO (este código será melhorado após realizarmos a interface com o BD) Referenciar na ACTIVITY_MAIN o include do layout ACTIVITY_CADASTRAR_AMIGO Cada layout será apresentado individualmente 14 Mão-na-massa 02 - Criando layout para cadastrar amigo Vamos lá! Mãos na massa! 15 Mão-na-massa 02 - Exemplo de tela para cadastrar amigo 16 Mão-na-massa 02 Agora é com você! Crie seu layout Teste os botões Ajuste o projeto 17 Mão-na-massa 01 No activity_main.xml, inclua o novo layout colocando um ID e o atributo de visibilidade. Ficará assim: <include android:id="@+id/include_cadastro" layout="@layout/activity_cadastro_amigo" android:visibility="invisible"/> 18 No activity_main.java, elimine o código do binding do botão FAB e vamos inserir o novo código para botão FAB Ficará assim: FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); fab.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { findViewById(R.id.include_listagem).setVisibility(View.INVISIBLE); findViewById(R.id.include_cadastro).setVisibility(View.VISIBLE); findViewById(R.id.fab).setVisibility(View.INVISIBLE); } }); Mão-na-massa 01 19 No activity_main.java, vamos incluir o código do botão CANCELAR Ficará assim: Button btnCancelar = (Button)findViewById(R.id.btnCancelar); btnCancelar.setOnClickListener(new Button.OnClickListener() { @Override public void onClick(View view) { Snackbar.make(view, "Cancelando...", Snackbar.LENGTH_LONG) .setAction("Action", null).show(); findViewById(R.id.include_listagem).setVisibility(View.VISIBLE); findViewById(R.id.include_cadastro).setVisibility(View.INVISIBLE); findViewById(R.id.fab).setVisibility(View.VISIBLE); } }); Mão-na-massa 01 20 No activity_main.java, vamos inlcuir o código do botão SALVAR Ficará assim: Button btnSalvar = (Button)findViewById(R.id.btnSalvar); btnSalvar.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Snackbar.make(view, "Salvando...", Snackbar.LENGTH_LONG) .setAction("Action", null).show(); findViewById(R.id.include_listagem).setVisibility(View.VISIBLE); findViewById(R.id.include_cadastro).setVisibility(View.INVISIBLE); findViewById(R.id.fab).setVisibility(View.VISIBLE); } }); Mão-na-massa 01 21 PROF. DRECO 2022 22