我试过多次,以我的故事板对Xamarin翻译,但不能使它工作......首先我有一个Splashcreen那么好叫我MainStoryboard(所以里面的AppDelegate)Xamarin Ios的本地化
public override bool FinishedLaunching(UIApplication application, NSDictionary launchOptions) {
var lang = NSLocale.PreferredLanguages[0];
Window = new UIWindow(UIScreen.MainScreen.Bounds);
UIStoryboard Storyboard = UIStoryboard.FromName("Main", null);
UIViewController initialViewController = Storyboard.InstantiateInitialViewController() as UIViewController;
Window.RootViewController = initialViewController;
Window.AccessibilityLanguage = lang;
Window.MakeKeyAndVisible();
return true;
}
我有一个名为Main.storyboard的故事板。在资源文件夹中有en.lproj和fr.lproj。每个文件夹里我有一个特定的文件的文件名为Main.strings像(以下我的项目文件夹中)在法国Maiin.strings的
例子:
"458.text" = "Rechercher";
"473.text" = "Parametres";
"501.text" = "Informations";
"480.normalTitle" = "Mise a jour";
"481.normalTitle" = "A propos";
plist文件是也正确:
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleLocalizations</key>
<array>
<string>fr</string>
</array>
对我来说这一切都是正确的,但它不工作......我仍然有“???”我已经放入故事板了。 (在458项目中有“???”,但是本地化应该在“Rechercher”中转换)。
谢谢你的帮助!
有你读https://developer.xamarin.com/guides/ios/advanced_topics/localization_and_internationalization/#storyboard –
我也有通过复制Main.String文件修复相同的问题。如果您仍然觉得有任何问题随时发表评论 –
是的,这是我的意思是“像在文档中”... –