2010-10-12 14 views
8

Situación: Estoy comenzando XCode, creando un nuevo proyecto para el iPhone (ver aplicación) y cargando el archivo XIB en el IB. Manipulo la vista (agregando una etiqueta con la cadena "hola"), guardo, construyo, ejecuto la aplicación, todo está bien. Ahora estoy localizando el XIB. Lo que hago: hago clic derecho en el archivo xib, agrego el idioma deseado y luego de eso, tengo dos archivos XIB en mi XCode. Se ve absolutamente perfecto, tal como se muestra en mi libro de programación de iPhone ("the big nerd ranch"). Cambio la etiqueta en ambos XIB a otra cadena, digamos "¡buenos días!".¿Por qué mi archivo XIB no se localiza (iPhone)?

Problema: Ahora limpio y reconstruyo la aplicación, pero siempre muestra el antiguo archivo XIB, siempre la cadena "hola". Incluso cuando cambio la configuración del iphone a otros idiomas, siempre aparece la cadena "hola". Pero el XIB con "hola" no existe en mi xcode en ninguna parte.

¿Algún consejo para mí? Me vuelve loco, y solo espero que me esté perdiendo algo simple.

estoy utilizando XCode 3.2.3 y 4.0 SDK

Muchas gracias por adelantado!

Respuesta

7

Hay aa algunos pasos a seguir, incluyendo:

  • ibtool --generate-cuerdas-archivo Example.strings en.lpoj/Example.xib
  • genstrings -o en.lproj * .m
  • traducir el archivo de recursos
  • ibtool --strings-archivo fr.lproj/Example.strings en.lproj/Example.xib -Escribir fr.lproj/Example.xib
  • arrastrando el archivo de recursos traducidos a la proyecto (en el lugar correcto)

Echa un vistazo a este iPhone localization tutorial para ver los pasos completos + capturas de pantalla.

+0

Gracias por su ayuda. Desafortunadamente no resolvió el problema. Pero: me ayudó a encontrar el problema aún mejor. Incluso cuando elimino el archivo XIB en el ejemplo anterior (usando xcode o la antigua línea de comandos), el archivo XIB aún se muestra en el simulador. Entonces la pregunta es: ¿Cómo deshacerse del XIB? Esperaba un error durante el tiempo de compilación o durante el tiempo de ejecución, pero nada. ¿Sigues mostrando el viejo XIB? ¿Pero por qué? ¿Algún consejo para mí? – peace97

+3

Ok, después de pensar durante 2-5 minutos, el punto es el siguiente: cuando no * elimina la aplicación * en el iPhone-Simulator, el simulador parece contener el archivo XIB. Después de eliminar la aplicación, obtengo el error de tiempo de ejecución esperado – peace97

+4

Ok, eso es: me perdí la tarea de eliminar la aplicación en el simulador de iPhone. Después de localizar la aplicación, tuve que eliminarla en el simulador de iPhone, luego hacer una compilación + limpia, y todo está bien. – peace97

6

El simulador de iPhone y el dispositivo contienen una memoria caché de los NIB. es fácil de borrar en el simulador, ya que se puede eliminar, pero estoy tratando de averiguar cómo borrar esa caché en el dispositivo sin tener que eliminar la aplicación.

+0

No puede hacer eso, pero mientras su aplicación se reconstruye, tiene tiempo para eliminar la aplicación del dispositivo/simulador. Al menos, funciona para mí, porque la aplicación es lo suficientemente grande ... – 18446744073709551615

0

En mi caso, tuve que reiniciar xcode además de eliminar la aplicación en el simulador para que funcione.

2

Prueba esto:

  1. Comprobar parámetro Localitations si se ha añadido a la pestaña "Info" del archivo de proyecto
  2. Ventana - Organizador - Escoja su proyecto - Eliminar los datos derivados
  3. Proyecto Clean
  4. Eliminar aplicación de su dispositivo
  5. Ejecutar nuevamente.
0

Xcode tiene un error cuando se trata de cadenas localizadas en un archivo xib. En lugar de reemplazar las cadenas localizadas con las cadenas reales de xib, Xcode mantiene las cadenas de xib originales. Todo lo que tiene que hacer es convertir el archivo Cadenas localizables en un archivo de Interface Builder. Puede hacerlo en la sección de Localización en las propiedades del archivo del constructor de interfaz.

Espero que esto ayude!

Cuestiones relacionadas