Bem-vindo mais uma vez ao curso de Introdução ao Desenvolvimento de
Aplicativos Android.
Neste módulo, você viu que activity fornece uma tela,
por meio da qual nós podemos nos comunicar com o usuário.
Essa tela é criada com código XML e atrás dessa tela existe o código
JAVA que pode efetuar algum processamento.
O que você precisa aprender agora é como comunicar esses dois aspectos.
E este será o tema desta videoaula.
Eu vou apresentar a você alguns detalhes do código que foi gerado
automaticamente pelo Android Studio no método onCreate e vou dar pouco mais de
responsabilidades ao onCreate, adicionando a chamada de método que você verá
com bastante frequência nos seus próprios códigos: o método findViewById.
Vamos ver no código-fonte como este método é invocado.
A primeira linha de código no corpo do método onCreate será
sempre super.onCreate.
Isso avisa ao sistema Android que além do código que vamos inserir aqui, queremos
que o código que está no método onCreate da classe pai seja também executado.
Particular, queremos que o método onCreate da classe pai seja executado
antes de qualquer linha de código que vamos inserir.
Não vamos entrar detalhes sobre o que essa chamada está fazendo especificamente,
porque as classes do Android são muito complexas.
Entenda apenas que caso você não insira essa chamada,
a exceção super not called exception será disparada.
A segunda linha de código do método onCreate será
sempre uma chamada ao método setContentView.
Essa chamada recebe como parâmetro a id do código
XML que servirá de interface gráfica para esta activity.
Neste momento, o código XML será inflado,
o que significa que ele será transformado código JAVA.
Objetos serão gerados a partir das marcações e dos atributos e
posteriormente adicionados na hierarquia.
Observe na chamada de setContentView que o parâmetro é o nome
do arquivo XML precedido de r.layout.
Após a chamada setContentView, podemos acessar os
elementos que estão no arquivo XML usando o método findViewById.
É uma prática comum usar o método findViewById para todos os
elementos da interface gráfica que serão usados algum lugar do nosso código.
Nesse caso, o método findViewById irá criar uma referência para o elemento
da interface gráfica e nós adicionaremos essa referência como atributo da classe.
Para o método findViewById, temos que garantir
que uma Id foi configurada no código XML na marcação da view.
Por exemplo, vamos verificar se a text view tem uma id no arquivo
XML e adicionar uma Id se for necessário.
[SEM_ÁUDIO]
[SEM_ÁUDIO]
[SEM_ÁUDIO] Agora,
vamos invocar o método findViewById no método
onCreate e salvar a referência atributo do tipo TextView.
É interessante notar que o método findViewById retorna objeto da classe View
e precisamos sempre converter esse objeto para o tipo específico correspondente.
[SEM_ÁUDIO] Agora que a referência é
atributo, podemos obter o texto da TextView qualquer lugar do código,
bastando invocar o método getText na instância que acabamos de criar.
Compilem o código e executem para verificar a mensagem que
aparece no Logcat.
Não canso de ressaltar que é
de suma importância que você repita todos os passos que eu estou fazendo aqui no
seu próprio Android Studio.
[SEM_ÁUDIO]