Trabalhando com Recursos da aplicação

Olá pessoas, hoje vamos falar de um tema bem importante: recursos ou “resources”.

Os recursos englobam diversos itens que não fazem parte do código, assim como as imagens, layouts, textos, e valores de dimensões. A ideia é que, tudo que não for código deve estar externalizado, ou seja, em um local separado. Por isso na pasta “src” você encontrará layouts, imagens, enfim, tudo aquilo que é considerado um recurso.

Uma das guidelines do android refere-se a utilização destes recursos e hoje vou falar de como deve ser feito. Vamos fazer um exemplo para demonstrar isto, crie um projeto qualquer, com um layout e algum texto.

Quando você cria uma aplicação pelo Android Studio ele já cria um layout com um texto, e algumas dimensões de layout, estes itens já são os recursos, pois estão externos ao código e ao xml de layout.

Vamos então colocar um botão para que, assim que pressionarmos o botão, trocarmos o texto, mas utilizando recursos. Observe a figura abaixo:

criando um botão com textoDois recursos já estão criados, as dimensões do relativeLayout e o texto Hello World. Criei então um botão e inseri o texto no próprio layout, o que ocasiona um “warning”.

warning_harcoded_textO próprio Android Studio já me recomenda a extrair este recurso em uma String Separada, e justamente isto que vou mostrar como fazer.

Primeira coisa é adicionarmos o nosso recurso no arquivo xml “strings”, pois refere-se a um texto, que fica no menu esquerdo, dentro do diretório values, como a figura abaixo mostra.

Adicionando o recurso
Adicionando o recurso

Adicionando outra tag de string, posso colocar o texto desejado. A referência para este meu texto será name e seu conteúdo será o que está dentro da tag string: Mudar Texto. Fazendo isto, voltemos ao nosso layout novamente, e agora, ao invés de deixar escrito diretamente no layout o nosso texto, buscaremos do recurso strings.

Referenciando o recurso desejado no arquivo de layout
Referenciando o recurso desejado no arquivo de layout

Em arquivos xml este deve ser o padrão de referenciarmos o nosso recurso: @recurso/nomeDoRecurso. Desta forma, estaremos deixando o conteúdo do texto externo, pensando em termos de manutenção de código isto é excelente. Imagine que sua aplicação tenha um texto qualquer , talvez um “Ola, seja bem vindo”, e este texto esteja presente em todas as telas da aplicação, e um belo dia, o designer decide que deve ser trocada a frase para “Ola meu cliente favorito”, já imaginou o trabalho de mudar textos de todas as telas, e isso porque dei exemplo de um texto, agora imagine quantos recursos são utilizado em uma grande aplicação, não faria sentido deixar o texto em cada tela.

Além disso, também ocorrem muitas situações em que os recursos são modificados em tempo de execução, por isso criamos o botão, agora iremos mudar o texto Hello World, para Oi Mundo, depois de clicarmos o botão.

Primeira coisa eu preciso adicionar mais um recurso lá no meu arquivo strings, pois a ideia é deixar externo ao código qualquer texto.

Adicionando recurso para o texto
Adicionando recurso para o texto

Agora vamos lá na nossa classe java MainActivity para fazermos a lógica de clique do botão e mudança do texto.

A primeira etapa é localizar os id´s dos itens que precisarão sofrer mudanças, no caso o texto e o botão.

Encontrando referência dos componentes
Encontrando referência dos componentes

Feito isto agora vamos adicionar um evento que será um Listener do botão, ou seja, assim que o botão for clicado, a execução entrará neste código, executando o que estiver dentro dele.

Mudando o conteúdo do texto
Mudando o conteúdo do texto

Existe um atalho para criação de recursos. O Android Studio auxilia bastante nisto. Vá no seu recurso do texto do botão e delete esta linha, e depois volte no arquivo de layout da aplicação, ele estará com o warning, mostrado anteriormente neste tutorial, e ali digite alt + enter (windows)

Criando um recurso
Criando um recurso

Após selecionar esta opção, abrirá uma nova janela, que você colocará o valor ou o nome do recurso, dependendo do que está no layout. Neste caso como eu só apaguei o recurso, no meu texto está o nome do meu recurso, portanto, na tela de criação do novo recurso me pedirá para colocar o valor, veja na figura abaixo.

Criando um recurso de texto
Criando um recurso de texto

Bom galera, é isso que queria passar hoje. Tenha sempre em mente um código limpo e organizado pode facilitar sua vida no futuro e é obrigação de um bom programador deixar seu código legível e entendível, faça bem a sua parte, mesmo que os outros não façam as deles.

Até a próxima.

Anúncios