Internacionalizando aplicativos para iOS no XCode 4.2 parte 1 – NIBs e Storyboards
by gregoriomelo on novembro 8, 2011
Não foi fácil encontrar um passo a passo legal pra mostrar como internacionalizar aplicativos para iOS com o XCode 4.2 Os tutoriais que encontrei eram defasados, pouco instrutivos ou incompletos. Encontrei o melhor texto no livro iOS Programming: The Big Nerd Ranch Guide. Vou tentar sintetizar um pouco. Vamos começar pelos
NIBs ou Storyboards
Abra sua aplicações para iOS no XCode e selecione a tela que você desejar internacionalizar primeiro. Abra o File Inspector (Cmd + Option + 1). Há um bloco chamado ‘Localization’:
Clique no ‘+’ e escolha língua para a qual você deseja ter a sua aplicação internacionalizada (vamos focar no português). Veja que o arquivo de interface fica com opção para expandir o conteúdo:
E vamos pra linha de comando!
No Terminal, entre no diretório raiz da sua aplicação. Entre na pasta com o nome da sua aplicação (por exemplo, MyApp). Dentro dela há uma pasta chamada ‘en.proj’ entre nela e digite o seguinte comando:
ibtool --generate-strings-file ../../Localizable.strings TELA
Em vez de tela, ponha o nome do NIB ou Storyboard que você deseja internacionalizar. Como exemplo, o comando poderia ser o seguinte:
ibtool --generate-strings-file ../../Localizable.strings MainStoryboard.storyboard
Onde MainStoryboard.storyboard é o arquivo que eu desejo internacionalizar.
Este comando irá criar um arquivo chamado Localizable.string na raiz do seu projeto. Edite o arquivo Localizable.strings para colocar os campos na língua que você deseja. Vá para a pasta da nova linguagem suportada, pt.lproj e digite o seguinte comando:
ibtool --strings-file ../../Localizable.strings --write MainStoryBoard.storyboard ../en.lproj/MainStoryBoard.storyboard
(Lembrando que MainStoryboard.storyboard é o nome do arquivo da tela da nossa aplicação o qual desejamos internacionalizar.) Esse comando cria um arquivo de interface chamado MainStoryboard.storyboard na pasta que estamos, baseado no arquivo de storyboard da pasta em inglês, e pega o conteúdo do arquivo Localizable.strings para poder preencher o texto dos campos.
Depois de executar o comando acima, volte para o XCode e abra a tela internacionalizada. Agora é só repetir os mesmos passos com outras linguagens. Quando um novo campo for criado, a mesma rotina deverá ser executada.
Valeu!


Leave your comment