在Xcode 6中本地化故事板时,创建的storyboard.strings文件包含故事板中的所有内容,即使许多元素已经具有将在运行时填充元素的IBOutlet(例如UITableViewCells中的UILabel)。例如:
/* Class = "UILabel"; text = "Cuisine "; ObjectID = "Leo-99-CcC"; */
"Leo-99-CcC.text" = "Cuisine ";
/* Class = "UILabel"; text = "Comments:"; ObjectID = "SY6-eR-QpE"; */
"SY6-eR-QpE.text" = "Comments:";
有没有办法可以定义哪些元素应该本地化,哪些元素应该被忽略?
有没有办法让这些评论更具信息性。与使用NSLocalizedString(@"key", @"Clear comment for translator about context")
的incode版本相比,上面的示例为翻译者提供了很少的上下文。
我想我可以在故事板编辑器中添加更具描述性的占位符文本,但在使用AutoLayout约束等时,这不是正确的解决方案。
答案 0 :(得分:0)
我发现了一些过时的方法来过滤掉你不想在Storyboards中进行本地化的元素,但这会使故事板更难以使用。如果在导出XLif时删除UILabel中的文本(例如),则不会包含该UI元素。这适用于UITableViewcell中的标签,该标签将在运行时填充,但之后使样式和约束布局变得困难。