Para hacer una prueba de localización de un iPhone al español con Xcode, me basé en el tutorial y en la aplicación creados por Balaji Malliswam. A continuación, podréis ver cómo llevé a cabo el proceso con mis propias capturas de pantalla. Dicha aplicación consta de una pantalla en la que se muestra información básica de un país en función del idioma en el que se encuentre el iPhone. Para realizar esta prueba, he utilizado el programa para Mac OS llamado Xcode, que solo se encuentra en inglés. Una vez cargada la aplicación de ejemplo, comprobé que los únicos idiomas existentes eran el inglés y el ruso como puede verse en la figura 1:

A continuación, habilité la casilla de Use Base Internationalization para separar las partes traducibles del código informático de la aplicación.

La siguiente pantalla que me apareció fue la de elegir qué archivos e idiomas de referencia utilizar para llevar a cabo la localización en español. En la imagen de abajo puede verse que aparecen los idiomas de ruso y base. Este último se refiere al inglés porque es la lengua en la que se creó la aplicación de ejemplo.

A partir de aquí, la localización puede hacerse de dos formas:
- exportando un archivo de extensión .xliff para que, a posteriori, alguien lo traduzca; o
- editando el texto directamente desde el programa.
Para esta prueba, opté por exportar el archivo para abrirlo con un editor.

Aquí, pude ver que el texto original estaba acotado por las etiquetas <source> y </source> y que el texto destino lo estaba por <target> y </target>. Así pues, procedí a la adaptación de los textos en la parte correspondiente para añadir la información de España. Cuando llegué al final del archivo, me di cuenta de que quedaban unos segmentos que carecían de las etiquetas target (enmarcadas en azul en la foto). Entonces, decidí añadirlas y poner sus traducciones. El resultado fue que cuando importé el archivo, el programa Xcode se cerraba solo. Así que inmediatamente intuí que eso se debía a haber añadido las etiquetas extra con sus traducciones. Por lo tanto, las borré y las dejé como estaban. De nuevo, procedí a importar el archivo. Esta vez, el programa no se cerró y me mostró la siguiente pantalla:

Precisamente, los segmentos que intenté añadir a mano y me dieron problemas son los que aparecieron en pantalla. Además, en la captura, puede apreciarse que sale el texto traducido al ruso por encontrarse ya localizado. Seguidamente, hice clic en Import y me dirigí a la sección de Localizable.strings (Spanish). Allí, y como puede verse en la figura 6, estaban los campos problemáticos con su traducción al ruso.

A continuación, borré las líneas en ruso y las sustituí por la traducción al español.

También probé a cambiar el nombre de la aplicación en inglés para que lo mostrase en español. Para ello, edité la sección InfoPlist.strings (Spanish) y sustituí «iOSLocalizationExample» por «iOSLocalización».
Después, inspeccioné las demás secciones que aparecían y encontré Assets.xcassets donde aparecían las banderas de EE. UU. y de Rusia. Al no encontrarse la bandera de España, cuando ejecutase la aplicación y pusiese el iPhone en español, no saldría ninguna imagen. De hecho, examinando la sección ViewController.swift aparecía una sentencia IF en la que comprobaba el nombre de una imagen (Flag), seguida de un guion y del código del idioma utilizado.

Por eso, busqué una bandera en Internet y añadí un nuevo conjunto de imágenes a la aplicación. A dicho conjunto le puse el el nombre de Flag-es para seguir la nomenclatura mencionada anteriormente.

Llegados a este punto, y después de haber cargado las imágenes de la bandera, solo quedaba poner el iPhone en español y ejecutar la aplicación, como puede verse en la captura de pantalla:

El resultado fue todo un éxito, ya que en la pantalla del iPhone simulado aparecía todo el texto adaptado y traducido.

Espero que os haya resultado interesante esta pequeña aportación a la localización de un iPhone al español con Xcode, porque verdaderamente me apasiona todo lo relacionado con ella. Saludos.