Локализация с%@

Я пытаюсь локализовать текст "Имя системы:" в коде ниже:

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]];

и в вашем файле Localizable.string:

"SystemNameKey" = "System Name: %@";
Другие вопросы по тегам