ios - XCode Storyboard本地化重复字符串合并?

标签 ios xcode interface localization builder

我目前正在开发一个 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/

相关文章:

c# - 接口(interface)的IL代码

javascript - 我想将 JSON 数据传递给与 web View 相关的 javascript 函数。但是我无法从 Javascript 函数中获取响应数据

iphone - 让每个 UITableView 单元格打开新 View ?

xcode - 由 Xcode 版本 13 构建的应用程序在 ios 12 上崩溃

ios - appdelegate 中的 UIButton 外观层不起作用

c# - 了解接口(interface)

iphone - 关于 AudioQueue : request to trim 0 + 1676 = 1676 frames from buffer containing 1152 frames 的 XCODE AVAudioPlayer 错误

objective-c - 使用 NSManagedObject objectID : use as PK for record filtering, 连接表等是否安全?

ios - 如何在 iOS 中将一个视频叠加在另一个视频上?

java - 创建对象时重写方法