【问题标题】:Localize info.plist file which has a different name?本地化具有不同名称的 info.plist 文件?
【发布时间】:2017-03-10 07:02:27
【问题描述】:
【问题讨论】:
标签:
ios
objective-c
localization
settings
info.plist
【解决方案1】:
我今天遇到了同样的问题,我花了将近一整天的时间来解决它。我在 stackoverflow 上阅读了很多与此相关的问题,发现无论您给 Info.Plist 文件起什么名称(比如说 InfoTarget1.plist),当它构建时,它都会在产品内部转换为标准的“Info.plist”。
令人惊讶的是,相应的 InfoPlist.strings 文件(例如,InfoTarget1Plist.strings 具有自定义名称)不会发生这种情况。
解决方法是创建一个 InfoPlist.strings 并将其本地化为所需的语言。这对我有用,因为我只想为所有目标本地化“NSLocationAlwaysUsageDescription”。
因此,如果您的 plist 文件中只有公共字段需要本地化,您可以采用以下相同的方法:
- 在保存 .plist 的文件夹中创建一个新的 InfoPlist.strings 文件。
- 添加键值对进行本地化。
- 从您的 xcode 右侧的文件检查器中本地化此文件。
- 它会要求您移动当前的 InfoPlist.strings 文件,从下拉列表中选择“Base”。
- 从文件检查器中选择您想要本地化的其他语言,假设您已经从“信息”选项卡中为您的项目添加了这些语言的本地化。
- 更新相应文件中的本地化值。
清理并运行您的应用。应该这样做!