你可能知道iOS 8需要NSLocationWhenInUseUsageDescription键来使用用户的位置。我已经添加了这个键和一些一般信息到我的信息plist。
如何在plist文件中使用翻译字符串?
——更新——
我已经有一个Localizable字符串。我只是想知道我能不能用一些 NSLocalizedString(MYSTRING,nil)在plist字符串内。我知道我可以创建多个文件的信息。plist的本地化,但我想知道是否有一个更简单的方法。
你可能知道iOS 8需要NSLocationWhenInUseUsageDescription键来使用用户的位置。我已经添加了这个键和一些一般信息到我的信息plist。
如何在plist文件中使用翻译字符串?
——更新——
我已经有一个Localizable字符串。我只是想知道我能不能用一些 NSLocalizedString(MYSTRING,nil)在plist字符串内。我知道我可以创建多个文件的信息。plist的本地化,但我想知道是否有一个更简单的方法。
当前回答
在我的情况下,本地化没有工作,原因是名称中的'-'符号。 例如:“aero-Info.plist” 和本地化文件:“aero-InfoPlist。字符串”和“aeroInfoPlist。字符串“没有工作。
其他回答
Tips
记住,iOS模拟器在默认情况下使用你的系统语言。请在iOS模拟器设置中更改语言(和地区),以便测试您的翻译。 本地化字符串(见苹果文档)应该是 NSLocationWhenInUseUsageDescription = "此描述"; 而不是(引用“…”) "NSLocationWhenInUseUsageDescription" = "此描述";
对于更新的XCode 12 / 13 /…
1. 创建一个新的InfoPlist。项目中的字符串文件。
2. 选择您的文件,您应该会看到右边的边栏选项“本地化”
3.如果您想在项目的Info >>本地化中添加更多语言
它会自动创建一个“InfoPlist”的副本。字符串”为您添加的新语言。
iOS本地化。plist
如果在InfoPlist.string中设置key,可以跳过在.plist中定义key
.plist
InfoPlist.string
"NSPhotoLibraryAddUsageDescription" = "To download image";
你应该使用InfoPlist。字符串文件(保留I和P大写)来本地化Info.plist的值。进入“File->New->File”,在iOS的“Resource”页签下选择“Strings File”,命名为InfoPlist,进行创建。打开并插入信息。你想本地化的Plist值:
NSLocationWhenInUseUsageDescription = "Description of this";
现在可以本地化InfoPlist了。带有翻译的字符串文件。
选择本地化选项,或根据需要启用本地化,
您应该能够在左侧编辑器中看到该文件。
注意:在模拟器上测试本地化时。你需要改变模拟器本身的语言而不仅仅是Xcode目标中的语言。(约翰·韦伯致谢)
这是信息的官方文档。Plist键本地化。
感谢马可,感谢你在这个回答中包含的照片!
对于任何遇到信息问题的人。当尝试添加本地化时,plist不被包括,比如在Xcode 9中。
你需要制作信息。Plist localiazble通过进入它并单击文件检查器中的本地化按钮,如下所示。
info。当你添加新的本地化时,plist将被包含在文件资源中。