未从Main.Storyboard加载的翻译(英语)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了未从Main.Storyboard加载的翻译(英语)相关的知识,希望对你有一定的参考价值。
我的ios应用程序面临的问题是,故事板中自动翻译的所有文本,标题,标签都不是。同时,使用NSLocalizableStrings通过我的Swift代码翻译的所有文本,标题,标签都运行良好。
这是我的环境:
- Xcode v 9.4.1
- 发展语言:英语
- 本地化,英语 - 本地化的6个文件
- 开发语言:法语 - 本地化了2个文件(此行低于另一个,对吗?)
Main.Storyboard包括:
- Main.Storyboard(Base)
- Main.strings(英文),包含所有英文翻译
.strings文件是正确的,包含NSLocalizable函数的翻译
- 我已完成Export for Localization以获取en.xliff文件
- 在文件中,它表示source = fr和target = en,这很好
- 我在en .xliff文件中翻译了标签,标题,文本等
- 我使用en .xliff文件完成了导入本地化
为了测试本地化,我执行Edit Scheme / Run,将Application Language设置为English,将Application Region设置为System Region
我所看到的 :
无论视图如何,所有要由Swift代码中的NSLocalizableString函数翻译的文本都会按预期正确翻译和显示。好
但是,故事板自动翻译的所有文本仍然以法语显示。所有这些(查看标题,按钮,标签等)。看起来好像没有读取Main.strings(英文)。
最后一部分应该是直截了当的,不是吗?
我已经删除了三次英语并重做完整的本地化过程,没有任何效果。
我的备份解决方案是将所有翻译移动到Swift代码中,而不是利用故事板自动翻译,但老实说这并不令人兴奋。
任何线索?有帮助吗?非常感谢
问题:如果您创建Localization StoryBoard。之后你会添加一些标签或按钮然后在本地化故事板中不可用。
解决方案:从项目中删除完整的本地化故事(<YourStoryBoardName> .String)。不要仅删除参考。
打开en.lproj> <YourStoryBoardName> .String并删除。为其他语言执行此操作然后再次创建此项,您将在本地化中找到所有按钮和标签
重要的提示:
通过删除您的所有本地化字符串将删除所以首先做备份。
以上是关于未从Main.Storyboard加载的翻译(英语)的主要内容,如果未能解决你的问题,请参考以下文章
ios - Xcode 9.4.1 在 main.storyboard 中卡住加载