私は、スレッドの現在のカルチャを変更Xamarin.macリソースのローカライズは、現在の文化
インサイドAppDelegate xamarin.macにローカライズ用のファイルを.resxファイルを使用しようとしていますによって変更されません。
しかし、文字列は常にデフォルトのリソースファイルから示されています。また、私は私のアプリ内の2つのリソースファイルを持っています。 ..どんな解決策ですか?
は、私はまた、ネイティブ言語の変更を使用し、ここでは全体のAppDelegateのコンストラクタです:
ところでpublic AppDelegate()
{
string [] lang = { "ru", "en" };
NSUserDefaults.StandardUserDefaults.SetValueForKey (NSArray.FromObjects (lang), (Foundation.NSString)"AppleLanguages");
NSUserDefaults.StandardUserDefaults.Synchronize();
System.Threading.Thread.CurrentThread.CurrentUICulture = new CultureInfo ("ru");
System.Threading.Thread.CurrentThread.CurrentCulture = new CultureInfo ("ru");
Resources.Culture = GetCurrentCultureInfo();
}
、xamarinスタジオ6.1.1(15ビルド)私が持っているなら、私はresource.ru.resxを追加することはできません。私のプロジェクトでresource.ru、ちょっとバグ!
私はresource-ru.resxファイルを作成して名前を変更しました。
感謝を..しかし、それは私のために動作しません:(ここでもう1つのタスクがあります。私はまた、母国語の変更を使用します。 string [] lang = {"ru"、 "en"}; \t \t \t NSUserDefaults.StandardUserDefaults.SetValueForKey(NSArray.FromObjects(lang)、(Foundation.NSString ) "AppleLanguages"); \t \t \t NSUserDefaults.StandardUserDefaults.Synchronize(); この後、あなたが書いたコードを設定します:Resources.Culture = GetCurrentCultureInfo(); – Nininea
ここにresources.ru.resxファイルを取得する間違っています:( – Nininea