O Spinner é um Widget no Android que serve para seleção de itens em uma lista. Na linguagem de programação Java conhecemos o spinner como JComboBox e no HTML5 como select.
Para o spinner funcionar precisamos passar uma "lista" com o que ele deve mostrar na tela para o usuário. Essa lista pode ser passada de algumas formas, como por exemplo:
Para iniciarmos de maneira básica, vou exemplificar como popular uma spinner através de um array criado no arquivo strings.xml no diretório values.
A vantagem de utilizar o "array de string" no XML é que podemos internacionalizar a nossa aplicação e as opções que serão carregadas na nossa "spinner".
Para iniciarmos o exemplo, vamos criar um Layout para um cadastro de Cliente, conforme Imagem a seguir:
Agora que já temos o layout vamos no diretório "res"->"values" para abrir o arquivo "strings.xml". No strings.xml vamos criar um Array estático com os valores que devem aparecer no nosso spinner.
Antes de setar o array no Spinner vamos alterar o "@+id/" do Spinner. Geralmente para Spinner utilizo a abreviação "sp", ou seja, nesse caso ficará "spSexo".
Agora que já criamos o array no "strings.xml" precisamos acrescentar o atributo "android:entries=" no XML do Spinner. Nesse atributo devemos indicar o array criado no strings.xml, ficando conforme a Imagem:
Observação: Mesmo indicando o array que será utilizado para o spinner o mesmo não mostrará os valores Masculino e Feminino no "Graphical Layout" do "Gui Designer". Os valores só serão mostrados no Emulador quando o aplicativo for instalado.
Agora que a parte gráfica já foi criada, vamos criar uma classe no pacote "src" chamada Cliente. A classe terá 2 atributos, são eles: nome e sexo. A Imagem a seguir demonstra como ficará a classe:
No MainActivity vamos criar os atributos referente ao XML da aplicação e um objeto denominado "cli" do tipo Cliente. A Imagem a seguir demonstra o código da MainActivity.
Dentro do método onCreate vamos criar o evento onClick para o botão cadastrar. Dentro desse método vamos resgatar a informação que o usuário escolher no EditText e no Spinner.
Para resgatar a informação do Spinner vamos utilizar o método "getSelectedItem". Esse método retornará um "Object". Podemos pegar esse Object e transformar através de um "cast" para "String" conforme Imagem:
Observação: Ao invés de utilizar um "cast" forçando a conversão para String também podemos buscar a informação com o método toString() após o método "getSelectedItem()", conforme segue:
Para terminar o artigo a última Imagem mostra o Spinner funcionando.
Esse código foi criado utilizando:
Eclipse Java EE IDE for Web Developers.
Version: Juno Service Release 2
Build id: 20130225-0426
Esse código foi criado para:
Android API Level 19 versão 4.4 Kit Kat ou superior
Voltar para Android
Voltar Página Inicial
Voltar para Disciplinas