言語設定の取得

明日に向かって昇龍拳さんのサイトで言語設定の取得の方法がのっていました。

Localの確認の為Toastで出力するプログラムを書いてみました。

Locale _lo = Locale.getDefault();
Toast.makeText(this, _lo.toString(), Toast.LENGTH_LONG).show();

上記のような形で。en_USと取れました。で、localeのつづり間違いがあると怖いので、どの言語が取れているのかをLocale.CHINAなどで取得できるので、それとif文などで分岐をしようと思ったのですが、

Locale.CHINAとLocale.CHINESEが存在してました。

中身を確認すると、(toString()で)

Locale.CHINA:zh_CN
Locale.CHINESE:zh

となり、CHINAの方が後ろになんかついている。。

と、日本もJAPANとJAPANESEがありました。

 

よく調べてみると、どうやらzhが言語で、話されているエリアが_CNのようでした。

なのでTaiwanは

Locale.TAIWAN:zh_TW

となっていて、台湾での中国語です。って言う中身になっていました。

上記のように同一言語が異なる地域で扱われている言語に関しては振り分けに注意が必要かもしれません。

前後の記事

前の記事:

次の記事:

関連の記事

コメントの投稿

  • サイト内検索

新作アプリの紹介

関連サイトの紹介

アンドロイドアプリ開発TIPS
きぐるみカメラ
ふらいぱん
アンドロイドのデザイン集
Page top↑