Este será um post rápido onde explicarei como adicionar menus em suas aplicações Android.
Abaixo temos um exemplo de um menu em utilização, trata-se do menu do navegador de internet do Android:
Para adicionar um menu em uma activity é simples, basta sobrescrever e implementar o método onCreateOptionsMenu(Menu) e adicionar os itens. O retorno do método deve ser um booleano TRUE ou FALSE indicando se o menu será ou não exibido.
O atributo android.view.Menu que é passado com paramêntro para o método onCreateOptionsMenu(Menu) será utilizado para adicionar os itens atraves do método add, conforme exemplo abaixo:
Conforme explicado anteriormente o método add(int groupId, int itemId, int order, CharSequence title) é utilizado para adicionar os itens ao menu, ele recebe quatro parâmetros, onde:
groupId: Defini a qual grupo o menu deve pertencer.
itemId: Identificador único para o item. O valor Menu.NONE é utilizado caso não seja necessário um identificador.
order: Indica em qual ordem o item deve aparecer. O valor 0 (ZERO) caso não seja necessário ordernar.
title: Representa o texto que aparecer no item.
Observe que algumas constantes (CRIAR, ALTERAR e PESQUISAR) foram utilizadas para representar o identificador único de cada item. Estas constantes serão utilizadas posteriormente para manipular o evento de clique/toque no item.
Ao executar esta activity e pressionar o botão menu do celular o resultado abaixo é visualizado:
Vamos implementar o método onMenuItemSelected(int featureId, MenuItem item) que será invocado pelo android sempre que o usuário clicar sobre algum dos itens. O retorno do método deve ser um booleano TRUE ou FALSE. O TRUE indica se o processo de seleção finalizará ou FALSE para executar o processo de manipulação normal.
Ao clicar sobre um dos itens o android invocará o método onMenuItemSelected(int featureId, MenuItem item), onde o parâmetro item representa uma instância do MenuItem selecionado pelo usuário. Na implementação utilizo as constantes para verificar qual item foi selecionado.
Submenus
Tinha terminado o post quando lembrei que existe a possibilidade de adicionar itens que atuam como submenus, o processo de adição é simples, basta utilizar o método addSubMenu(String) no android.view.Menu passado como paramêtro, por exemplo:
O resultado será um item de menu chamado “Sobre” que ao ser acessado mostrará um sub menu conforme imagem abaixo:
E é isso pessoal, a criação de Menu e SubMenus é bem simples, ate a próxima.
Arquivado em: Android, Api, Java, Tutorial Etiquetado: | activity, android, menu, onCreateOptionsMenu, onMenuItemSelected, submenu







Fala Ythalo,
Muito “tri” teus posts sobre Android, estou acompanhando e vendo a hora que tomarei coragem pra fazer um hello world tb
Cara tu sabes me dizer se eu tiver um smartphone Android, posso jogar minha app direto do meu PC depois de compila-la no telefone ou tem que passar pela AndroidMarket?
Ex.: Posso fazer meu software corporativo pra Android ou simplesmente passar pros colegas de escritório uma app de bobeira?
Valeu.
Quem bom que gostou, obrigado.
Vamos lá, começe a desenvolver hoje a noite, é simples, também estou no aprendizado.
Olá Jean,
O desenvolvimento é baseado na versão do android que roda no seu smartphone, não precisa passar pelo Android Market. Você desenvolve no PC, geralmente utilizando o eclipse com o plugin ADT, e envia para seu celular.
Ythalo, parabéns pelo post! Muito útil!
Implementei seu exemplo e percebi que o texto “Criar” do “Toast.makeText(…)” aparece quando seleciono o menu Sobre. Você teria alguma sugestão?
A mesma coisa aparece quando seleciono um submenu, mas aqui consegui remover esse texto colocando um “default” no switch sem escrever nada (apenas o comando break).
Abraço e bons estudos!
Uma pequena sujestão. Não tem como disponibilizar este tutorial em arquivos pdf para que possamos baixar para consulta futuras.
Olá Pedro,
Tentarei converter em PDF e em breve estarei disponibilizando.
Atenciosamente.