2017-03-14 6 views
0

私のアプリは4種類の言語をサポートしていますので、サーバーのデータが正しい言語で表示されるように、どのサーバーが使用されているかをサーバーに伝える必要があります。どれが多くの言語/ロケールクラスの中でMY翻訳の情報が現在使われているか教えてください。現在、どのローカリゼーションが使用されているかを調べるにはどうすればよいですか?

デバイスがロシア語の場合(私には翻訳がありません)、デフォルトの英語に戻ってしまいますので、「en」が現在使用中であることを知る必要があります。デバイスがイタリア語の場合(私には翻訳があります)、私は明らかにそれが "それ"であることを知る必要があります。

ありがとうございました!

答えて

0

追加のテストと調査の後、私は自分自身でそれに答えることができました。そして、次のことが正しい答えを提供することがわかりました。

NSString* language = [[[NSBundle mainBundle] preferredLocalizations] firstObject]; 

[[NSBundle mainBundle] preferredLocalizations]は、あなたもあなたのアプリによってサポートされている言語の順序付きリストを提供します。それはあなたに言語の部分だけを与えるでしょう。だから、 "en"ではなく、 "en-US"ではない。

私は、iOSの複数のバージョン間でこれをテストしていませんが、それは10

1

スウィフト3については、使用できるのiOSで動作

let localization = Bundle.main.preferredLocalizations.first 
関連する問題