2011-11-24 10 views
11

He escrito una aplicación para iOS que usa localización personalizada (por diversas razones). No define NSLocalizedString y reemplaza con una función en línea del mismo nombre que extrae sus valores de un NSDictionary que se descarga desde un servidor.Cómo localizo UIImagePickerController

Mi problema es este ... Todo funciona bien, pero las vistas UIKit estándar (es decir, UIImagePickerController) no están siendo internacionalizadas, lo que creo que es algo que debería suceder automáticamente cuando se cambia el idioma del dispositivo?

Por ejemplo, mi aplicación completa está mostrando su homólogo japonés, pero a pesar de que el idioma del dispositivo se establece en japonés los controles estándar (UIImagePickerController y un botón en barras de búsqueda cancelar no se muestran!)

cualquier ayuda muy apreciada: D

EDITAR

he intentado quitar mi redefinición de NSLocalizedString y todavía tengo el mismo problema, así que mientras aconsejándome contra redefiniendo funcionalidad API estándar es grande, en realidad no se lp mí con el problema que he encontrado.

+0

¿Qué espera que suceda si se cambia una API del sistema? No redefina/redifine 'NSLocalizedString()'. –

+0

He intentado eliminar el #undef NSLocalizedString y no hace la diferencia – TappCandy

Respuesta

32

¿Agregó los idiomas que desea apoyar a la definición de su aplicación? En XCode 4 esto se puede encontrar en la página de Información del proyecto (ver a continuación).

UIKLas vistas no se muestran en el idioma del dispositivo si el idioma del dispositivo no se encuentra en la lista de idiomas compatibles de la aplicación. Esto es bueno, de lo contrario, en una aplicación que utiliza el marco de localización estándar, el usuario puede ver una combinación de diferentes idiomas (las vistas de UIKit estarían en el idioma del dispositivo y el resto del contenido, que no está disponible en el idioma del dispositivo, estaría en el lenguaje base de la aplicación).

Supported localization panel in XCode 4

+0

¡Perfecto! ¡Pensé que había intentado esto pero no pude haberlo probado correctamente! Muchas gracias :) – TappCandy

+1

Sigue siendo la respuesta correcta a partir de Xcode 7.0.1 ... –

Cuestiones relacionadas