Recursos do Android
Este artigo apresenta o conceito de recursos do Android no Xamarin.Android e documentará como usá-los. Ele aborda como usar recursos em seu aplicativo Android para dar suporte à localização do aplicativo e a vários dispositivos, incluindo diferentes tamanhos de tela e densidades.
Visão geral
Um aplicativo Android raramente é apenas o código-fonte. Muitas vezes, há muitos outros arquivos que compõem um aplicativo: vídeo, imagens, fontes e arquivos de áudio apenas para citar alguns. Coletivamente, esses arquivos de código não-fonte são chamados de recursos e são compilados (juntamente com o código-fonte) durante o processo de build e empacotados como um APK para distribuição e instalação em dispositivos:
Os recursos oferecem várias vantagens para um aplicativo Android:
Separação de código – separa o código-fonte de imagens, cadeias de caracteres, menus, animações, cores etc. Como esses recursos podem ajudar consideravelmente ao localizar.
Direcionar vários dispositivos – fornece suporte mais simples a diferentes configurações de dispositivo sem alterações de código.
Verificação em tempo de compilação – os recursos são estáticos e compilados no aplicativo. Isso permite que o uso dos recursos seja verificado em tempo de compilação, quando será fácil capturar e corrigir os erros, em vez de em tempo de execução quando é mais difícil localizar e caro corrigir.
Quando um novo projeto Xamarin.Android é iniciado, um diretório especial chamado Recursos é criado, juntamente com alguns subdiretórios:
Na imagem acima, os recursos do aplicativo são organizados de acordo com seu tipo nesses subdiretórios: as imagens entrarão no diretório desenhável ; as exibições vão no subdiretório de layout etc.
Há duas maneiras de acessar esses recursos em um aplicativo Xamarin.Android: programaticamente no código e declarativamente em XML usando uma sintaxe XML especial.
Esses recursos são chamados de Recursos Padrão e são usados por todos os dispositivos, a menos que uma correspondência mais específica seja especificada. Além disso, cada tipo de recurso pode, opcionalmente, ter Recursos Alternativos que o Android pode usar para direcionar dispositivos específicos. Por exemplo, os recursos podem ser fornecidos para direcionar a localidade do usuário, o tamanho da tela ou se o dispositivo for girado 90 graus de retrato para paisagem, etc. Em cada um desses casos, o Android carregará os recursos para uso pelo aplicativo sem nenhum esforço extra de codificação do desenvolvedor.
Recursos alternativos são especificados adicionando uma cadeia de caracteres curta, chamada qualificador, ao final do diretório que contém um determinado tipo de recursos.
Por exemplo, resources/drawable-de especificará as imagens para dispositivos definidos como uma localidade alemã, enquanto resources/drawable-fr manteria imagens para dispositivos definidos como uma localidade francesa. Um exemplo de como fornecer recursos alternativos pode ser visto na imagem abaixo, em que o mesmo aplicativo está sendo executado apenas com a localidade do dispositivo mudando:
Este artigo terá uma visão abrangente do uso de recursos e abordará os seguintes tópicos:
Noções básicas de recursos do Android – usando recursos padrão de forma programática e declarativa, adicionando tipos de recursos, como imagens e fontes, a um aplicativo.
Configurações específicas do dispositivo – suporte às diferentes resoluções de tela e densidades em um aplicativo.
Localização – o uso de recursos para dar suporte às diferentes regiões em que um aplicativo pode ser usado.