将本地化文件添加到新的 IOS 7 应用程序

Posted

技术标签:

【中文标题】将本地化文件添加到新的 IOS 7 应用程序【英文标题】:Adding localized files to a new IOS 7 app 【发布时间】:2013-10-17 18:58:36 【问题描述】:

我开始研究应用程序本地化,但我一开始就陷入困境。我创建了一个名为 LocalizedStrings2 的新项目:

我单击加号按钮添加 意大利语,它让我可以本地化 2 个 InfoPlist.strings 文件:

这是正确的吗?顺便说一句,我添加了意大利语:

然后我在英文InfoPlist.strings文件中写了如下代码:

"ERR_MSG" = "Error Message!"

在意大利语版本的文件中输入了以下行:

"ERR_MSG" = "Messaggio d'errore!"

当我编译时收到以下错误(即使两个文件为空,我也会遇到相同的错误:

关于最新如何本地化我的 ios 应用文档的任何提示或良好参考?

提前感谢您的帮助!

詹尼

【问题讨论】:

【参考方案1】:

我很多天都面临同样的问题。然后我想通了…… 只需放一个 ;在行的末尾,它是固定的! :D

【讨论】:

【参考方案2】:

推荐

我认为您不应该在 UI 中对您的文件有两个英文引用。将其中一项更改为意大利语并验证文件是否位于 finder 文件夹中的正确位置。

然后我会考虑从项目中删除文件引用并重新添加它们。在 Xcode 5+ 中为旧版本的 SDK 使用本地化时,我注意到了一些特殊的行为。顺便说一句 - 如果您计划支持 iOS5 的部署目标,您将需要删除 Base 本地化设置并手动创建本地化文件夹(在 Finder 的项目文件夹内)。重新添加文件后,我会检查 Build Phases > Copy Bundle Resources > search plist 以验证是否找到了 ProjectName/(localization).lproj。

注意 请查看更新的文档,让我知道这是否是一个足够的答案。

Internationalizing Your App

【讨论】:

我一定会读的...但是为什么我在向项目中添加新语言时会看到两个 InfoPlist.strings 文件?为什么添加新语言后即使不进行任何操作也会产生编译错误? @GianniCostanzi - 编译错误可能是由于没有将目标语言更改为英语以外的语言(如上图所示,英语被选择了两次)。尝试我的回答中的更新建议,看看它是否有帮助,或者如果问题仍然存在,请进一步完善问题。【参考方案3】:

我猜第二个 InfoPlist.strings 文件源自您的测试。 在您的应用测试目标中查看“支持文件文件夹”。

【讨论】:

以上是关于将本地化文件添加到新的 IOS 7 应用程序的主要内容,如果未能解决你的问题,请参考以下文章

iOS 10 本地通知不起作用(迁移到 UserNotifications 框架)

创建一个新的 iOS 控件

迁移到新的 Macbook - IOS 应用推送通知和证书

将 UITableViewControllers 表视图添加到新的 UIView

创建视图控制器并将现有 VC 的标签和按钮添加到新的 VC Swift iOS

将UIImage添加到新的Scroll View