myślę zlokalizować xibs bezpośrednio nie jest dobrym rozwiązaniem. Używam https://github.com/steipete/Aspects do hakowania metody awakeFromNib w UILabel i lokalizowania tam tekstu. Przykład:
#define Localized(_v_) NSLocalizedString(_v_, nil)
NSError *err = nil;
[UILabel aspect_hookSelector:@selector(awakeFromNib)
withOptions:AspectPositionAfter
usingBlock:^(id<AspectInfo> aspectInfo) {
UILabel *label = aspectInfo.instance;
NSString *lStr = Localized(label.text);
if (lStr) {
label.text = lStr;
}
} error:&err];
Jeśli masz UIButton i inne UIView w obsłudze, można po prostu podpiąć awakeFromNib z UIView i zlokalizować każdy rodzaj widzenia.
Czy możesz odwoływać się do tłumaczeń w pliku .strings z pliku xib, czy musisz ustawić wartości etykiety (etc) w kodzie, jeśli potrzebujesz tylko jednego xib zamiast jednego xib na język? – jrturton
Świetne pytanie @jrturton, i nie jestem pewien odpowiedzi na to pytanie. Aby odwołać się do .strings z samego Xib? Podejrzewam, że to możliwe przez KVC, ale nigdy nie próbowałem. –
zobacz ten samouczek: http: //www.raywenderlich.com/2876/how-to-localize-an-iphone-app-tutorial –