我目前正在开发一个 iOS 应用程序并将其本地化为多种语言,但遇到了一个烦人的(不是破坏性的)问题。
当我为 Storyboard添加新本地化时,xcode 会自动填充字符串,这非常好。我遇到的问题是我有多个接口(interface),它们都有一个后退按钮。这些文本当然是相同的,它们的翻译也是如此。 我想知道的问题是,是否可以在不使用 strings.localizable 的情况下以某种方式将多个对象翻译合并为一个?
这是它目前的样子:
"Pnu-Ec-HAj.normalTitle" = "Back";
"Rtx-fT-rdc.normalTitle" = "Back";
但是如果有像
这样的语法会更简单"Pnu-Ec-HAj.normalTitle", "Rtx-fT-rdc.normalTitle"= "返回";
(这个语法明显不正确)
我环顾四周,但还没有找到这个问题的任何答案。
感谢阅读。
最佳答案
我建议在代码中引用 Storyboard中的每个文本,并在 viewDidLoad 上设置文本,例如:
buyButton.titleLabel.text = NSLocalizedString(@"SHOP_BUY_BUTTON_TEXT",@"在详细 View 中购买产品的按钮");
如果您有庞大的 Storyboard,工作量会很大,但最终您会得到一个干净的 Localizable.strings
,其中包含简洁的键和注释,为您的翻译人员提供必要的上下文。
我在键前加上应用程序的部分,例如 SHOP_***
、USER_SETTINGS_***
等
此外,我们使用类似 OneSky 的服务在线组织我们的翻译并从云端更新它们(不隶属于他们,而且它也不是没有初期问题)。
关于ios - XCode Storyboard本地化重复字符串合并?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35482855/