我有2个目标的应用程序。应用程序中的字符串资源分散在代码和故事板文件中。现在我需要为两个目标完全不同的字符串集合(虽然对于两个目标都使用英语)。 我可以在此链接后为每个字符串创建2个不同版本的Localized.strings - Alternative strings for different targets of same App - use NSLocalizedString?
但我找不到任何类似的方法来隔离每个目标的Mainstoryboard.strings文件。我应该制作2份MAinstoryboard.strings文件并为每个目标分配。我没有试过这个,但有些东西告诉我这可能不是最好的方法。
令人惊讶的是,在Apple教程上没有任何内容。有什么建议吗?
答案 0 :(得分:3)
用于添加可能是解决方案的假语言的代码段:
language = Bundle.main.preferredLocalizations[0]
if target == SOME_TARGET {
if language == "en" {
language = "fr" // fake language
} else if language == "ar" {
language = "rs" // another fake language
} else {
// default app language
language = "whatever" // default fake language
}
UserDefaults.standard.set([language], forKey: "AppleLanguages")
UserDefaults.standard.synchronize()
} else {
// do nothing
}
另一个提出的解决方案。是为每种语言准备两个故事板本地化文件。在目标之间切换时,使用OS X finder手动替换它们。但是,我想这对故事板本身的字符串没有帮助。
答案 1 :(得分:1)