【问题标题】:SwitUI iOS localization language is not changingSwiftUI iOS 本地化语言没有改变
【发布时间】:2022-06-18 07:13:58
【问题描述】:
我在 Xcode 13.2.1 中将我的应用程序本地化为两种语言,如下图所示 - EN 文本是硬编码的,CZ 文本在 Localizable 文件中(从 xcloc 文件导入)。
即使我在运行方案中设置了 EN 语言,应用程序也会不断出现在模拟器中的 CZ 中。到目前为止,我发现将外观更改为 EN 的唯一方法是完全从应用程序中删除 CZ 本地化。请问有什么提示吗?谢谢。
【问题讨论】:
标签:
xcode
swiftui
localization
【解决方案1】:
以下是我修复它的方法:
- 在项目导航器中选择
Localizable.strings文件。
- 在文件检查器中,您会看到“英语”未被选中,您需要将其标记为选中。
- 默认情况下,Xcode 会将现有的非英语本地化复制为英语,因此我们需要将其替换为原始的英文翻译。幸运的是,可以从 .xloc 包中提取它。
- 选择菜单产品 - 导出本地化,确保选中英语并运行导出。
- 在Finder中打开导出目录,找到
en.xloc文件。右键单击它并选择“显示包内容”。
- 在包内,转至
Source Contents/%TargetName%/en.lproj。
- 在里面,您会看到
Localizable.strings 文件。将其复制到您的项目中,替换 Xcode 之前生成的文件。
- 重新构建应用程序。
做完这一切,应该会回归英文本地化。