#localization #nsstring #system #uidevice
#локализация #nsstring #система #пользовательское устройство
Вопрос:
Я пытаюсь локализовать текст «Имя системы:» в приведенном ниже коде:
NSString *systemName = [NSString stringWithFormat:@"System Name: %@", [[UIDevice
currentDevice] systemName];
Я делаю это, изменяя код на этот:
NSString *systemName = NSLocalizedString(@"SystemNameKey", @"System Name Info");
В моем файле Localizable.strings я добавляю следующий код:
"SystemNameKey" = "System Name: %@", [[UIDevice currentDevice] systemName];
Конечно, это не сработает, потому что UIKit не импортируется в Localizable.stings, и неудивительно, что когда я добавляю код импорта, он не работает. Я уверен, что есть альтернативный способ сделать это, о котором я просто не думаю в данный момент. Есть идеи? Я чувствую, что упускаю что-то действительно очевидное.
Ответ №1:
Вы должны попробовать сделать это таким образом:
NSString *systemNameLocalized = NSLocalizedString(@"SystemNameKey", @"System Name Info");
NSString *systemName = [NSString stringWithFormat:systemNameLocalized, [[UIDevice currentDevice] systemName]];
и в вашем локализуемом файле.string:
"SystemNameKey" = "System Name: %@";