AndroidのEditTextに画像(アイコン)を追加する方法を解説
このチュートリアルでは、AndroidアプリのEditText内に画像(アイコン)を表示する方法を、サンプルコードとともにわかりやすく解説します。検索ボックスなどでよく見かける「テキスト入力欄の右側に虫眼鏡アイコンが表示される」UIは、android:drawableRight属性を使うだけで簡単に実装できます。
手順1:Android Studioで新規プロジェクトを作成する
まず、Android Studioを起動し、メニューから「File」→「New Project」を選択して新しいプロジェクトを作成します。必要な項目(プロジェクト名、保存先、言語など)をすべて入力して完了させてください。
手順2:activity_main.xmlにEditTextを配置する
次に、「res/layout/activity_main.xml」に以下のコードを記述します。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="https://schemas.android.com/apk/res/android"
xmlns:tools="https://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center"
android:layout_marginTop="30dp"
tools:context=".MainActivity">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:paddingStart="5dp"
android:paddingEnd="10dp"
android:background="@drawable/rounded_edittext"
android:drawableRight="@android:drawable/ic_menu_search" />
</LinearLayout>コードのポイント
上記のコードでは、EditTextを配置し、以下の2つの設定を行っています。
android:drawableRight:EditTextの右側にシステム標準の検索アイコン(ic_menu_search)を表示します。独自の画像を使いたい場合は、@drawable/任意の画像名を指定してください。android:background:後述のドローアブルファイル「rounded_edittext.xml」を背景として適用し、角丸の枠線を持つ見た目にしています。
手順3:角丸背景用のドローアブルを作成する
続いて、「res/drawable/rounded_edittext.xml」というファイルを作成し、以下のコードを記述します。
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="https://schemas.android.com/apk/res/android">
<solid android:color="#FFFFFF" />
<stroke
android:width="1dp"
android:color="#2f6699" />
<corners
android:radius="10dp" />
</shape>このシェープファイルでは、白背景(#FFFFFF)・青系の枠線(#2f6699)・10dpの角丸を定義しており、EditTextが洗練されたデザインになります。色や角丸のサイズは自由にカスタマイズ可能です。
アプリを実行して確認する
それでは、実際にアプリを動かして結果を確認してみましょう。実機のAndroidスマートフォンをPCに接続している前提で説明します。Android Studioでプロジェクト内のアクティビティファイルを開き、ツールバーの「Run(実行)」アイコンをクリックしてください。デバイス選択画面で接続した端末を選ぶと、スマートフォンの画面にアプリが起動し、以下のように右側に検索アイコン付きのEditTextが表示されます。

まとめ
EditTextへの画像追加は、android:drawableLeft・drawableRight・drawableTop・drawableBottomのいずれかの属性にドローアブルを指定するだけで実現できます。さらに、shapeリソースを組み合わせることで、入力欄のデザインも柔軟にカスタマイズできるので、検索フォームやログイン画面などのUI改善にぜひ活用してみてください。
-
【Android開発】角丸のEditTextを作成する方法をステップごとに解説
はじめにこの記事では、Androidアプリで角が丸い(角丸)EditTextを作成する方法を、具体的なコード例とともに解説します。drawableリソースにカスタムのshapeファイルを定義し、それをEditTextの背景に設定するだけで、簡単におしゃれな角丸デザインを実現できます。手順1:新規プロジェクトを作成するまず、Android Studioで新しいプロジェクトを作成します。メニューから「File → New Project」を選択し、必要な情報を入力してプロジェクトを作成してください。手順2:レイアウトファイル(activity_main.xml)を編集する次に、「res/layou
-
Tkinterで画像を追加・表示する方法を解説!Pillowとfiledialogの使い方
画像は、あらゆるアプリケーションにおいて非常に有用な要素のひとつです。Pythonでは、Pillow(PIL)パッケージを利用することで、Tkinterアプリケーション内でも簡単に画像を扱うことができます。画像の読み込みや抽出、画像ペインの設定など、便利な機能が多数用意されています。 サンプルコード:ダイアログで選択した画像を表示する 以下の例では、ユーザーがファイルダイアログから画像を選択し、その画像をLabelウィジェットを使ってウィンドウ上に表示します。 #Tkinterライブラリをインポート from tkinter import * from tkinter import ttk