你可能知道iOS 8需要NSLocationWhenInUseUsageDescription键来使用用户的位置。我已经添加了这个键和一些一般信息到我的信息plist。
如何在plist文件中使用翻译字符串?
——更新——
我已经有一个Localizable字符串。我只是想知道我能不能用一些 NSLocalizedString(MYSTRING,nil)在plist字符串内。我知道我可以创建多个文件的信息。plist的本地化,但我想知道是否有一个更简单的方法。
你可能知道iOS 8需要NSLocationWhenInUseUsageDescription键来使用用户的位置。我已经添加了这个键和一些一般信息到我的信息plist。
如何在plist文件中使用翻译字符串?
——更新——
我已经有一个Localizable字符串。我只是想知道我能不能用一些 NSLocalizedString(MYSTRING,nil)在plist字符串内。我知道我可以创建多个文件的信息。plist的本地化,但我想知道是否有一个更简单的方法。
当前回答
对于任何遇到信息问题的人。当尝试添加本地化时,plist不被包括,比如在Xcode 9中。
你需要制作信息。Plist localiazble通过进入它并单击文件检查器中的本地化按钮,如下所示。
info。当你添加新的本地化时,plist将被包含在文件资源中。
其他回答
我强烈建议阅读苹果的指南,并查看以下列出的WWDC资源: 国际化与本土化主题
具体来说,当您向项目中添加一种新语言时,您有机会选择要包含哪些InfoPlist文件(如果您有多个目标,则会有多个Info plist文件)。你所需要做的就是点击本地化下的+,并选择一种新的语言来添加支持。
添加完成后,它将在适当的lproj目录中为给定语言创建必要的字符串文件。
——编辑
需要明确的是,iOS会根据用户当前选择的语言,将Plist条目的键作为本地化字符串文件中的键,为Plist文件替换字符串。
Tips
记住,iOS模拟器在默认情况下使用你的系统语言。请在iOS模拟器设置中更改语言(和地区),以便测试您的翻译。 本地化字符串(见苹果文档)应该是 NSLocationWhenInUseUsageDescription = "此描述"; 而不是(引用“…”) "NSLocationWhenInUseUsageDescription" = "此描述";
使用InfoPlist时。字符串文件(在XCode中,它应该放在信息旁边。Plist文件-真实的文件位置可能在项目中的任何地方
)小心使用键的短名称进行翻译。
我试图使用隐私-相机使用描述,但工作密钥是NSCameraUsageDescription
除了已接受的答案(项目在Flutter上,但基本与本地相同):
我有文件夹Base。lproj, en。lproj xx.kproj。等等。每个字符串。 这个文件有这样的行(键周围没有引号,末尾有一个分号):
NSLocationWhenInUseUsageDescription = "我解释为什么我需要这个";
检查你的你的项目>你的语言:
另外,检查项目。pbxproj文件,位于XXX.xcodeproj/project.pbxproj: 它应该有你所有的语言代码(en, fr等)
但即便如此,它也没有起作用。最后,我注意到信息中的CFBundleLocalizations键。plist文件。(要在XCode中以原始键值的形式打开它,请在信息栏上用鼠标右键。plist文件->打开作为>源代码) 确保数组中的值是代码而不是完整的单词,例如fr而不是French等。
<key>CFBundleLocalizations</key>
<array>
<string>en</string>
<string>ru</string>
<string>lv</string>
</array>
再次检查您的设备是否设置为您正在测试的语言。干杯
注:“开发语言”不会影响您的问题,不要费心更改它。
逐步本地化Info.plist:
Find in the Xcode the folder Resources (is placed in root) Select the folder Resources Then press the main menu File->New->File... Select in section "Resource" Strings File and press Next Then in Save As field write InfoPlist ONLY ("I" (eye) capital and "P" capital - the l (ell) after the P should not be capital) Then press Create Then select the file InfoPlist.strings that created in Resources folder and press in the right menu the button "Localize" Then you Select the Project from the Project Navigator and select the The project from project list In the info tab at the bottom you can as many as language you want (There is in section Localizations) The language you can see in Resources Folder To localize the values ("key") from info.plist file you can open with a text editor and get all the keys you want to localize You write any key as the example in any InfoPlist.strings like the above example
“NSLocationAlwaysAndWhenInUseUsageDescription”=“blabla”;
“NSLocationAlwaysUsageDescription”=“blabla2”;
这就是所有的工作,你已经本地化了你的信息。plist文件!