2017-01-30 2 views
0

Ich hatte ein Framework, das Daten an den Server senden. Wenn ich eine Antwort vom Server bekomme, übersetze ich sie mit NSLocalizedString, aber es funktioniert nicht.ios9: NSLocalizedString im Framework

Ich versuchte Haupt Bundle zu meinem Framework-Bundle wie folgt zu ändern:

NSString* mainBundlePath = [[NSBundle mainBundle] resourcePath]; 
NSString* frameworkBundlePath = [mainBundlePath stringByAppendingPathComponent:@"Frameworks/MYFRAMEWORK.framework"]; 
NSBundle *bundle = [NSBundle bundleWithPath:frameworkBundlePath]; 

[bundle localizedStringForKey:@"Message" value:@"" table:nil]; 

aber immer noch nicht funktioniert. Gibt es eine Möglichkeit zur lokalisierten Nachricht, wenn sich der Localizable.string im Framework befindet?

Dank

Antwort

0

Schließlich habe ich versucht, Localizable.string neu zu erstellen und wenn ich lokalisieren möchte ich dies:

NSString *message = [[NSBundle bundleForClass:self.class] localizedStringForKey:@"MESSAGE" value:nil table:nil]; 

ich diesen Code von Rahmen innerhalb der Klasse setzen, so Bündel self.class zu Rahmenbündel direkt ist . Danke für die Hilfe.

0

Try [NSBundle bundleForClass:self.class] zu verwenden.

+0

Hallo Anton, NSString * Nachricht = [[NSBundle bundleForClass: self.class] localizedStringForKey: @ "Nachricht" Wert: @ "" Tabelle: Nil]; funktioniert immer noch nicht – victorz

+0

Seltsam ... Was ist Ihre Bündelkonfiguration? Auch dieser Link ist möglicherweise hilfreich für Ihre https://github.com/davbeck/TUSafariActivity/blob/master/Pod/Classes/TUSafariActivity.m#L45 –

+0

Was ist Self.class hier? Stellen Sie sicher, dass es sich um die Klasse aus dem Framework handelt. – jesse

Verwandte Themen