2017-03-16 13 views
0

実際のローカリゼーションと国コードに応じてリソースを持つ言語をサポートするアプリケーションを作成したいと思います。 Documentationによると、私はリソースをフォーマットするためにvalues-en-rUSを変更する必要があります。その設定では、アプリケーション内のsucessfulコンパイルとリソース内の適切なフラグイメージが設定されていますが、リソースを変更するためにはどのようなフォーマットを書くべきかはわかりません。試してみますen_USen-rUSen-US正しく動作しません。以前のバージョンでは、values-enのようなリソースをenに変更すると、アプリケーション言語のLocaleが正しく更新されています。適切な言語コードを持つ多言語リソース

答えて

1

values-en-rUSのロケールはnew Locale("en", "US")で取得できます。これは "en_US"ロケール(一致するvalues-en-rUS)のインスタンスを取得します。

new Locale("en_US")を使用しないと、「en_us」が生成されます。それはvalues-en-rUSと一致しません。またnew Locale("en-US")は動作しません。

APIレベル21からは、便利なLocale.forLanguageTag(String)メソッドがあります。この場合、指定されたIETF BCP 47言語タグ文字列のロケールが返されます。この文字列は "en-US"です。したがって、Locale.forLanguageTag("en-US)を使用することができます。

+0

これは私が必要としていたものです。ありがとうございます! – Expiredmind

0

ば完全にわからない何を求めていますが、言語を追加したい場合は、書き込みフォルダーを作成するために、実際に作成する必要がありますが、その形式で:<resource type>-b+<language code>[+<country code>]は 例:value-b+en+USその後

あなたがstrings.xmlファイルを追加することができます各フォルダを表示したいフォルダに移動します。すべての文書hereを見つけることができます。