我有一个Xamarin.IOS应用程序并尝试本地化一些图像。 作为指导,我接受了这篇文章:https://developer.xamarin.com/guides/ios/advanced_topics/localization_and_internationalization/
我尝试显示图像" ImageInstructionStep1"
以下是我的Ressources文件夹的屏幕截图:
所有图片都有构建动作" BundleResource"。 我用这一行在代码中分配图像:
imageInstructionStep.Image = UIImage.FromBundle("ImageInstructionStep1");
我在Info.Plist中注册了本地化:
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleLocalizations</key>
<array>
<string>de</string>
<string>fr</string>
<string>it</string>
</array>
但它总是显示英文版。
当我用它启动它时,我检查了应用程序所具有的语言环境:
NSLocale.CurrentLocale.LocaleIdentifier;
NSLocale.AutoUpdatingCurrentLocale.LocaleIdentifier;
并且两者都给出结果&#34; de_US&#34;。我的期望是这会加剧德国本土化。
此外,我尝试清理并重建应用程序到模拟器,包括在没有成功之前将其从模拟器中删除。
作为旁注可能是非常有用的:我在resx文件中本地化的所有文本都按照预期以德语显示。
我想念什么?
答案 0 :(得分:2)
正如我在评论中指出的那样,您应该将后备资源放入Base.lproj
文件夹。
至于您对InfoPlist.strings
的问题,请记住它们仅适用于Info.plist
中的字符串,因此就是您要求权限等时。{{{{{ {1}}:
da.lproj
等等。
对于其他字符串,例如“确定”,“取消”和其他按钮,您需要为每个文件夹添加"NSLocationWhenInUseUsageDescription" = "Vil du tillade App'en til at bruge din lokation?";
"NSCalendarsUsageDescription" = "Ost";
文件,其内容如下:
Localizable.strings