Visão geral dos recursos

Deve-se sempre exteriorizar os recursos do aplicativo, como imagens e strings do código do aplicativo, para que você possa mantê-los independentemente. Exteriorizar os recursos também permite fornecer recursos alternativos que sejam compatíveis com configurações de dispositivos específicos, como idiomas ou tamanhos de tela diferentes, que se tornam cada vez mais importantes à medida que mais dispositivos com Android são disponibilizados com configurações diferentes. Para fornecer compatibilidade com diferentes configurações, é preciso organizar recursos no diretório res/ de seu projeto usando vários subdiretórios que agrupem recursos por tipo e configuração.

Figura 1. Dois dispositivos diferentes, cada um usando o layout padrão (o aplicativo não fornece layouts alternativos).

Figura 2. Dois dispositivos diferentes, cada um usando um layout diferente fornecido para diferentes tamanhos de tela.

Para qualquer tipo de recurso, é possível especificar recursos padrão e vários recursos alternativos para o aplicativo:

  • Recursos padrão são aqueles que devem ser usados independentemente da configuração do dispositivo ou quando não há recursos alternativos que correspondam à configuração atual.
  • Recursos alternativos são aqueles projetados para uso com uma configuração específica. Para definir que um grupo de recursos é para uma configuração específica, anexe um qualificador de configuração apropriado ao nome do diretório.

Por exemplo: apesar de o layout da IU padrão ser salvo no diretório res/layout/, é possível especificar um layout diferente a ser usado quando a tela está na orientação de paisagem salvando-o no diretório res/layout-land/ . O Android automaticamente aplica os recursos adequados correspondendo a configuração atual do dispositivo com os nomes de diretórios de recursos.

A figura 1 ilustra como o sistema aplica o mesmo layout para dois dispositivos diferentes quando não há recursos alternativos disponíveis. A figura 2 mostra o mesmo aplicativo quando é adicionado um recurso de layout alternativo para telas maiores.

Os documentos a seguir fornecem um guia completo sobre como organizar os recursos do aplicativo, especificar recursos alternativos, acessá-los no aplicativo e muito mais:

Como fornecer recursos
Os tipos de recursos que você pode fornecer no aplicativo, onde salvá-los e como criar recursos alternativos para configurações específicas de dispositivos.
Acesso aos recursos
Como usar os recursos que você forneceu referenciando-os no código do aplicativo ou de outros recursos XML.
Processar alterações no tempo de execução
Como gerenciar alterações de configuração que ocorrem enquanto a Atividade está em execução.
Localização
Um guia ascendente para localizar o aplicativo usando recursos alternativos. Apesar de esse ser apenas um uso específico de recursos alternativos, ele é muito importante para atingir mais usuários.
Recursos XML complexos
Formato XML para compilar recursos complexos como drawables vetoriais animados em um só arquivo XML.
Tipos de recursos
Uma referência a vários tipos de recursos que você pode fornecer, descrevendo os elementos XML, os atributos e a sintaxe. Por exemplo, essa referência mostra como criar um recurso para menus do aplicativo, desenháveis, animações e mais.