【Android】アプリを多言語対応する時、画像も対応する

  • このエントリーをはてなブックマークに追加

Androidアプリを多言語対応したい!という時「あれ?そういえば画像はどう対応したらいいんだろう…」と悩む方もいらっしゃると思います。私がそうでした。

今回はそんな方向けの記事です。
ちなみにもともとアプリは形になっていて、テキストベースの言語の切り替えができている前提のお話です。

drawbleのフォルダを言語ごとに用意して入れていく

最初は戸惑うのですが、答えは結構単純で『drawableフォルダを各言語ごとに作成して該当する言語の画像を入れていく』が正解です。


例えば通常のdrawble構成はこのようになっていると思います。
作成しているものによってはdrawbleの『xhdpi』などは数が異なるのですがそこは適宜合わせてください。

英語に対応したい

基本の形はdrawable-[言語コード]-〇dpiになります。
言語コードについては『ISO 639-1コード』を参考にしてください。
英語に対応をさせたいときはこれを例えば英語の時は『drawable-en-〇dpi』のようにフォルダを作ります。ちなみに『drawable-』のすぐ後に入れる形でないとうまく表示できないので注意してください。

中国語の中でさらに繁体語のみに対応したい

大きな言語の括りについては先ほどご紹介した通りですが、その中でさらに細かく、例えば中国語でいえば簡体語や繁体語にしたいということがあるかと思います。
この時の基本の形はdrawable-[言語コード]-r[国名コード]-〇dpiになります。
言語コードは先ほどの『ISO 639-1コード』を参考にして、国名コードについては『ISO 3166-1 alpha-2』を参考にしてください。
一番気を付けないといけないのは国名コードの前に『r』を付けることです。
これを忘れると適用されないのでご注意ください。

Android Studioでの表示を確認しよう

ちなみにエクスプローラーベースで作業していましたが、Android Studioベースだとしたの画像のような表示になります。
画像がフォルダのようになっていて、その中に各言語のものも入っているような感じになっています。
今この表示だとでdrawbleのデフォルトは日本語になっていて、英語と中国(繁体)語とスペイン語に対応しています。
『xhdpi』だとかで見慣れてはいたはずなのですが最初は言語対応したファイルはどこへ行った…と戸惑ったので一応書いておきます。


実際に端末の言語を切り替えて見てみよう

というわけで弊社のAndroidアプリの『めちゃカワカレンダー』を例に…
ボタンなどの画像部分が無事英語に置きかわっているのがわかります。
わかってしまえばあっさりできます。


いろんな言語に対応したらその分DL数が伸びる可能性も…ぜひ試してみてください。




執筆者:工藤[ WEBデザイナー ]

WEBデザイナー。 最近はWordPressを触るのが好きです。よろしくお願いします。

関連記事

プログラミング

【PHP】PHPでExcelファイルを操作するお話 その2

目次1 前回は・・・2 考え方3 保存したフォーマットにデータを入れる4 ExcelからPDFへ変換する4.1 mpdfで変換する4.2 TCPDFで変換する4.2.1 IPAexフォントのインストール5 結局何がいいの? 前回は・・・ 前回はPHPでExcelファイルを操作する方法をまとめました。 基本的にはCSV出力や一括登録の代替案としてまとめましたが、PhpSpreadsheetを使うことでExcelで作成した書類のフォーマットにPHPでデータを入力してPDFで出力す […]

プログラミング

【PHP】PHPでExcelファイルを操作するお話 その1

目次1 こういうことってないですか?2 インストール方法3 PHPでライブラリの呼び出し方4 Excelファイルのエクスポート方法4.1 ちなみに・・・5 Excelファイルのインポート方法6 これを組み合わせると??? こういうことってないですか? webでの管理システムを設計するときに「CSVでインポートやエクスポート機能を付けてよ」って言われる事があります。 インポートに関しては一括登録や一括削除や更新など割とリスクが大きいのですが、エクスポートはあったりします。 CS […]

スマホアプリ

【Android】スプラッシュスクリーンを設定するお話

スマホアプリを作る上で欠かせない・・・訳ではないですが、アプリの構成に必要なのはスプラッシュスクリーン(以下スプラッシュ画面)ですよね 目次1 そもそもスプラッシュ画面とは?2 Androidアプリで実装する場合(今まで)3 SplashScreen API登場3.1 スプラッシュ画面用のActivityを用意する3.2 themes.xmlにテーマを記述する そもそもスプラッシュ画面とは? スマホアプリにかかわらず、ほとんどのアプリやプログラムを起動した際に一瞬表示される画 […]

株式会社8bit (エイトビット)

東京都目黒区でWebサイト制作、Webシステム開発などを行っております。
コーポレートサイトやWebサービスの企画・提案を得意としており、自社での経験を元にアイデアをカタチにするお手伝いをさせていただいております。

Web制作に関するご相談はお気軽にどうぞ

弊社に制作をご依頼いただく際の費用感をご確認いただける、
見積りシミュレーションをご用意いたしました。