Estoy trabajando en una aplicación con soporte multilingüe. Como se puede esperar, de vez en cuando me carga algunos archivos nib utilizando un código como este:Carga manual de una punta localizada diferente en iOs
self.currentController = [[newClass alloc] initWithNibName:@"CustomController" bundle:nil];
La aplicación va a continuación, cargar la versión xib localizada correspondiente de su carpeta languange. Ahora, me pregunto si es posible cargar el archivo de punta localizada manualmente. Por ejemplo, en lugar de simplemente cargando el CustomController, cargando la Inglés/francés/alemán/etc. versión de la CustomController.
¿Hay alguna manera de lograrlo?
¡Gracias por su ayuda con anticipación!
P.S. Sé que esto puede no ser la forma adecuada para cambiar los idiomas en una aplicación para iPhone/iPad, pero esto no es mi decisión
[más tarde editar] Esto parece un poco raro y como un truco, pero parece trabajo (carga de la punta alemán):
NSString* path= [[NSBundle mainBundle] pathForResource:@"de" ofType:@"lproj"];
NSBundle* languageBundle = [NSBundle bundleWithPath:path];
self.currentController = [[newClass alloc] initWithNibName:@"CustomController" bundle:languageBundle];
me encontré con la punta aquí: http://learning-ios.blogspot.com/2011/04/advance-localization-in-ios-apps.html
no se siente completamente en lo cierto, sin embargo, me pregunto si hay otras soluciones también. Para empezar, tengo la sensación de que esto causará problemas con las versiones anteriores de iOs, ya que la carpeta de idioma tenía una convención de nombres diferente
Compruebe si esto puede ayudarlo: http://stackoverflow.com/questions/598020/objective-c-cocoa-internationalization-with-nibs-is-that-really-a-good-idea – Peres
Hace, Pero no en este caso. Tengo algunas ideas sobre cómo lograr tal efecto sin usar plumillas localizadas. Desafortunadamente, la aplicación los usa ahora mismo y la idea es hacer esto lo antes posible, sin tener que volver a escribir mucho o replantear la aplicación. Si pudiera cargar manualmente los xibs localizados, sería realmente fácil convertirlo – BBog
¿Pero estamos hablando de hacerlo sobre la marcha?Por ejemplo, tengo las puntas para inglés UK, y luego voy a la configuración y cambio el idioma a frensh y simplemente cambiará ?? – Peres