icon
icon

Androidアプリ開発でImageButton(イメージボタン)を追加する方法【初心者向け】

Androidアプリ開発でGUIコンポーネントの【ImageButton(イメージボタン)】を使いする方法を初心者向けに解説した記事です。ImageButtonを使うと、自分で用意した画像をボタンにすることができます。

テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日  調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名  調査手法:インターネット調査

Androidアプリ開発では、アプリのパーツを簡単に追加できるGUIコンポーネントが数多く用意されています。

今回はそのなかの1つである、ImageButton(イメージボタン)を追加する方法と基本的な使い方をご紹介します。

 

本記事はTechAcademyのAndroidアプリ開発オンラインブートキャンプの内容をもとに解説しています。

 

大石ゆかり

田島メンター!!Androidアプリの標準のボタンじゃなくて、自分で作った画像のボタンをおきたいんですけど、どうしたらいいんですか〜?

田島悠介

それならImageButtonを使えばできるよ。

 

ImageButtonとは

ImageButton(イメージボタン)は、画像ボタンを利用するためのGUIコンポーネントです。

自分で用意した画像を簡単にボタンとして利用することができます。

 

 

事前準備

ImageButtonを配置する前に画像を用意しておくと、スムーズに作業ができます。

プロジェクトの「resフォルダ」内に「drawableフォルダ」を用意します。その中に、ImageButtonとして利用したい画像を保存しておきましょう。

 

 

[PR] Androidアプリの開発で挫折しない学習方法を動画で公開中

ImageButtonを配置する

ImageButtonはレイアウトエディタのパレットの「イメージ&メディア」から配置できます。

パレット内のImageButtonを、配置したい場所までドラッグしましょう。

 

ダイアログが表示されるので、drawableフォルダにコピーした画像のファイル名を選択し、[OK]ボタンをクリックします。

 

ImageButtonは配置されましたが、背景に色が付いてしまっているため格好悪いですね。

そこで、プロパティの「Background」を「#00000000」に変更すると、背景の透過が有効になります。

これで、ImageButtonの配置ができました。

 

xmlファイルを確認すると、次のようなコードが追加されています。

<ImageButton
android:id="@+id/imageButton2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="68dp"
android:layout_marginStart="68dp"
android:layout_marginTop="56dp"
android:background="#00000000"
app:srcCompat="@drawable/button1" />

 

 

ImageButtonをカスタマイズする

ImageButtonは、画面の解像度に合わせて表示させる画像を変更することができます。

プロジェクトを作成されたときに、下記のようなdrawableで始まるフォルダが作成されます。これに対して、端末に対応したフォルダ内に画像を保存しておけば、アプリを実行したときに、そのフォルダに保存されている画像を優先して表示させることが可能です。

  • drawable-ldpi : 低解像度画像(120dpi)
  • drawable-mdpi : 中解像度画像(160dpi)
  • drawable-hdpi : 高解像度画像(240dpi)
  • drawable-xhdpi : 超高解像度画像(320dpi)
  • drawable-xxhdpi : 超超高解像度画像(480dpi)
1時間でできる無料体験!

 

例えば、「drawable-ldpi」フォルダにdrawableフォルダと同じ名前で別の画像を保存します。

 

そして、画面サイズが違う2つのエミュレーターで起動すると、このような画面が表示されます。

右側のエミュレータの画面は「drawable-mdpi」に対応していますが、「drawable-mdpi」に画像がないため「drawable」に保存された画像が表示されています。

一方の、左側のエミュレータの画面は「drawable-ldpi」に対応しています。「drawable-ldpi」に保存された画像が表示されています。

この画像の使い分けは、ImageButton以外でも使えるので覚えておくと便利です。

今回の記事は以上です。

他のGUIコンポーネントを使ってみたい場合は、Androidアプリ開発でSwitchを追加する方法も合わせてご覧ください。

 

大石ゆかり

これで好きな画像のボタンが設置できますね♪

田島悠介

そうだね。標準のボタンだと堅いイメージがあるから、アプリによってはImageButtonを活用すると良いね。

大石ゆかり

はい♪

 

[お知らせ]TechAcademyでは初心者でもオリジナルアプリが作れるAndroidアプリ開発講座(オンラインブートキャンプ)を開催しています。自分でアプリを公開してみたい場合はご参加ください。

初心者・未経験でもできる。まずはテックアカデミーに相談しよう

プログラミングを独学で学習していて、このように感じた経験はないでしょうか?

  • ・調べてもほしい情報が見つからない
  • ・独学のスキルが実際の業務で通用するのか不安
  • ・目標への学習プランがわからず、迷子になりそう

テックアカデミーでは、このような 学習に不安を抱えている方へ、マンツーマンで相談できる機会を無料で提供 しています。
30分間、オンラインでどんなことでも質問し放題です。

「受けてよかった」と感じていただけるよう カウンセラーやエンジニア・デザイナー があなたの相談に真摯に向き合います。

「自分に合っているか診断してほしい」
「漠然としているが話を聞いてみたい」

こんなささいな悩みでも大丈夫です。

無理な勧誘は一切ありません ので、まずはお気軽にご参加ください。
※体験用のカリキュラムも無料で配布いたします。(1週間限定)

今なら参加者限定の割引特典付き! 無料相談を予約する