Cursos / Informática para Internet / Dispositivos Móveis / Aula

arrow_back Aula 07 - Interfaces Gráficas III

ListView

O ListView é o componente responsável por prover ao usuário listas de dados, organizadas a partir de listas presentes no código da aplicação. O ListView carrega os dados através de um Adapter, que pode ser implementado por completo, em uma nova classe, ou apenas utilizar uma das interfaces já implementadas. Nessa aula, utilizaremos a interface já implementada ArrayAdapter, que é capaz de carregar itens a partir de um array.

Outro ponto importante dos ListViews é que, além do próprio componente ListView, um layout deve ser definido para os itens que estarão presentes naquela lista, ou seja, o layout de cada linha que será exibida. É importante notar que no ArrayAdapter, a interface passada deve conter apenas um ListView onde o ArrayAdapter irá colocar as informações. Vejamos as Listagens 1 e 2, que indicam a declaração do ListView e do list_item.xml, respectivamente.

Listagem 1 – Declaração do arquivo activity_main.xml, contendo o ListView.
Listagem 2 – Declaração do arquivo list_item.xml, contendo o formato dos itens do ListView.

Com os dois XMLs declarados podemos, então, criar o Adapter e colocá-lo como responsável pelo layout dos itens da lista. Para fazermos isso, devemos fazer como mostrado na Listagem 3. Perceba que os dados carregados nesse ListView serão carregados a partir de uma lista constante, definida no início do arquivo.

Listagem 3 – Activity implementando a ListView

Perceba também que na Listagem 3 há a declaração de um comportamento para o ItemClickListener. Ao definir esse método, o ListView passa a ter um comportamento para responder a cliques em seus itens. Funciona como se cada item fosse um botão e, ao ser tocado, invoca esse método. É importante saber que é possível obter qual item da lista foi tocado (através do parâmetro posição) e interagir com a View que foi tocada (através do view). Isso pode ser utilizado, como no exemplo, para obter alguma informação do item quando o mesmo é tocado. No exemplo, um Toast é exibido com o texto referente ao elemento da linha tocada. Na Figura 1, podemos ver o resultado dos códigos exemplo e também um Toast sendo exibido.

ListView dos países

Versão 5.3 - Todos os Direitos reservados