2017-11-16 13 views
0

私は現在、Xamarin Formsアプリケーションのローカライズに取り組んでいます。XamarinフォームでiPhoneから地域設定を検出するにはどうすればよいですか?

iOSでは、デバイスの言語を変更せずに地域設定を変更することができます。 Xamarinフォームでこの地域設定を検出するにはどうすればよいですか?私は現在の文化を取得するために次のコードを試しましたが、地域設定は言語設定を変更しない限りCurrentCultureには何もしません。

var culture = CultureInfo.CurrentCulture 

は、私は、米国の地域の123.456と123,456として表示されるようになっているアプリで小数値を表示するために必要なのはフランスの領域です。言語設定を変更した場合にのみ123,456が得られます。

NSLocaleを使って現在のロケールを取得できます。en_FRです。しかし、私がこれを使って新しいCultureInfoを作成すると、それはSystem.Globalization.CultureNotFoundException例外をスローします。

  var culture = new CultureInfo("en_FR"); 

答えて

1

NSLocale.CurrentLocaleをお試しください。

また、

アプリケーションはNSNotificationCenterを監視するための通知としてNSLocale.CurrentLocaleDidChangeNotificationを使用して、ローカルシステムの変更を通知することができます。

+0

私はXamarinフォームを使用しています。フォームでこのNSLocaleをどのように使うことができるかわかりません。 –

+0

@RamarajTアクセスするには、依存関係サービスを作成する必要があります。 – SushiHangover

+0

私はNSLocaleを読むための依存関係サービスをすでに書いています。しかし、問題はロケール識別子としてen_FRを取得することです。これを使用して、フォームCultureInfoを作成することはできません。 –

関連する問題