web-dev-qa-db-ja.com

Androidローカライズ値-**フォルダ名

ローカリゼーションとそれらがとるべき名前を示すいくつかの矛盾するテーブルを見ました

それらの多くは、各国の言語のバージョンがあることを示唆しています。英語、スペイン語、中国語などの言語には問題なく、values-enフォルダーまたはvalues-en_USフォルダーを作成することを選択できます。より具体的にしたい場合

しかし、ギリシャ語などの他の一部の言語にはel_GRというロケール名があります。フォルダ名をvalues-elにするか、values-el_GRにする必要がありますか

これは単なる例であり、私が読んだテーブルを信頼していません。Android開発者ガイドには、利用可能なロケールがほとんどリストされていません

17
CQM

Android文字列ファイルのフォルダー名は、次のようにフォーマットされます。

  • リージョンバリアントなし:values-[locale]
  • リージョンバリアント:values-[locale]-r[region]
  • 例えば: values-envalues-en-rGBvalues-el-rGR

あなたのケースでは、フォルダを作成する必要がありますvalues-elギリシャ語の翻訳、およびvalues-el-rGR国固有のギリシャ語翻訳用。

また、Androidのリソースフォールバックメカニズムを利用して、特定の文字列をローカルでさらに翻訳できるようにすることもできます。

たとえば、「R.string.title」という文字列があり、ロケールが「el-GR」であるとします。Androidは、「R.string.title」の値を探します次の順序でファイルを検索します。

  • res/values-el-rGR/strings.xml
  • res/values-el/strings.xml
  • res/values/strings.xml

したがって、国固有の翻訳をres/values-el-rGR/strings.xmlres/values-el/strings.xml一般的な翻訳を保存します。

このフォールバックメカニズムを利用することで、異なる言語ファイルで文字列が重複することを回避できます。

35
Cowcow02

このリンクはあなたにとって興味深いかもしれません:

http://developer.Android.com/guide/topics/resources/providing-resources.html#AlternativeResources

特に表2の「Language and region」という行はそうでしょう。

サージ

12
Serge Bollaerts

プロジェクトの「res」フォルダーを右クリックします。選択>新規> Androidリソースファイル>ローカリゼーション-可能なすべての言語とロケールオプションを提供し、必要なフォルダを作成します。

0
careful7j

すべてが https://developer.Android.com/index.html で見つかります

  1. in https://developer.Android.com/guide/topics/resources/providing-resources.html#AlternativeResources

ドローアブルのような複数のリソース定義のページ記述、値

  1. https://developer.Android.com/training/basics/supporting-devices/languages.html

このページでは、言語解像度の定義を提供します。これは、ロケールディレクトリとリソースファイルの作成方法のインポートです。

形式は<resource type>-b+<language code>[+<country code>]

そしてその language codecountry codeリファレンス https://developer.Android.com/reference/Java/util/Locale.html

言語ISO 639 alpha-2またはalpha-3言語コード、または8文字までの登録済み言語サブタグ(将来の機能拡張のため)。言語にalpha-2コードとalpha-3コードの両方がある場合、alpha-2コードを使用する必要があります。有効な言語コードの完全なリストは、IANA言語サブタグレジストリで見つけることができます(「タイプ:言語」を検索してください)。 https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry

国(地域)ISO 3166 alpha-2国コードまたはUN M.49 numeric-3エリアコード。有効な国および地域コードの完全なリストは、IANA言語サブタグレジストリで検索できます(「タイプ:地域」を検索してください)。

https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry

その他の参照: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2

0
Bill