No nosso dia a dia a agenda é um instrumento de grande importância que as pessoas utilizam para fazer anotações de compromissos ou informações. Além disso, permite organizar as suas tarefas e ajuda as pessoas a não esquecerem de seus compromissos. Também é utilizado para fazer lista de compras, lista para arrumar as malas, lista de aniversários e outros. Mas que tal construir uma agenda ou lista como um aplicativo de celular, utilizando o MIT AppInventor2?
Para iniciar essa construção sugerimos que você conheça um projeto de agenda que possui uma estrutura pronta no AppInventor2 e explore suas configurações no seguinte link: Clique Aqui. Após fazer os primeiros testes e compreender o seu funcionamento será o momento de começar a criar a sua própria Agenda ou Lista.
Quando acessamos o projeto, na aba designer, podemos perceber diversos componentes sendo utilizados, como ilustra a imagem abaixo:
O componente intitulado “LB_Título” se refere a uma caixa de texto que possui um título referente página visualizada. O componente “BTN_agenda” é um botão e utilizamos “BTN” como uma forma de abreviar o nome. Já o componente “ORG_botoes” é um organizador utilizado para posicionar os botões e utilizamos “ORG” como forma de abreviar a palavra organizador.
Nesse projeto utilizamos um componente novo chamado “Variável Global”, com ele você pode criar uma variável para acompanhar a pontuação do jogador, um valor que pode ficar alternando, ou uma informação. Você pode criar essa variável e conforme precisar pode importar as informações ou pontuações dela sem precisar se preocupar em realmente acompanhar o que havia registrado anteriormente.
Na tela Cadastro, você irá encontrar algumas variáveis globais. Os blocos conforme a figura abaixo, representam a definição de variáveis globais “dados”, “info” e “tags”. A primeira variável global se trata de informações escritas pelo usuário referente a caixa de título, caixa de descrição, data, e grau de prioridade. A segunda variável global pega informações armazenadas no TinyDB (componente que iremos explicar mais adiante) e importa como lista permitindo a visualização em ordem dos eventos cadastrados. A terceira variável global tem o objetivo de registrar o título do evento cadastrado.
O TinyDB é um componente que funciona como banco de dados, permitindo armazenar informações no seu aplicativo para não perde-la quando o aplicativo é fechado. Geralmente é utilizado em conjunto com as variáveis globais que contem informações registradas pelo usuário ou realiza contagens.
Na figura abaixo podemos observar um conjunto de blocos que são responsáveis pela ação de “salvar informações”. Quando selecionado o botão “Salvar”, será reproduzido um som e todas as informações preenchidas no campo da agenda (título do evento, descrição, data e grau de prioridade) serão adicionadas em uma lista na variável global Dados e armazenados no TinyDB. Por fim você será redirecionado para a tela inicial.
O conjunto de blocos abaixo são referente a visualização dos eventos cadastrados. Quando pressionado um evento, na tela do seu aplicativo, o organizador irá se tornar visível e mostrará todos os eventos cadastrados. Em seguida irá importar todas as informações armazenadas no TinyDB anteriormente e irá organiza-las.
Entretanto a programação, conforme a imagem abaixo, contém um bug desafio para você refazer. Sempre que selecionado um item da lista da agenda ele irá deletar o item de 1ª posição e não o item selecionado. Portanto a proposta é identificar o bloco responsável por isso e substituir por outro bloco que remova o evento selecionado na tela do celular. Dica: use um bloco que é referente ao Visualizador de Listas.
Agora que você conhece um pouco melhor sobre a programação desse aplicativo, que tal corrigir o bug mencionado acima e criar a agenda do seu próprio jeito? É possível criar lista de aniversário de seus amigos, lista de compra, lista de viagem, agenda do trabalho, agenda de estudos e outros. Faça customização na imagem de fundo, altere os sons, adicione mais variável global se necessário e construa um aplicativo que possa te ajudar no dia a dia! Finalizando, por meio desse aplicativo foi possível mobilizar conhecimentos matemáticos relacionados a lógica, medidas, variáveis e proporcionalidade.