在我的代码中,我使用了很多本地化字符串,除了短字符串外,所有字符串都很好用。
实施例
NSString* text = [NSString stringWithFormat:NSLocalizedString(@"%@ at %@", nil), dateStart, timeStart];
在文件 localizable.string 中我有:
"%@ at %@" = "<translation>"
"attending %@" = "<translation>"
在我看来,编译器在尝试获取正确的字符串时失败..我怎样才能实现这个目标?
答案 0 :(得分:-1)
左侧是右侧副本的关键字
它不是应该在其中包含占位符的键,因为字符串在运行时由locale.strings中的字符串交换。
换句话说:在本地化后,您将错过%@
要实现您想要的效果,您需要将占位符放在已翻译的字符串中:
"SOME_KEY" = "%@ <localized> %@"