ボタンの画像を変更する
最終更新日:2015-08-15
通常のViewであれば、背景画像はandroid:background
で変更できますが、ボタンの場合はタップされているときとされていないときの2つを用意する必要があります。
drawable xmlを作成する
res/drawableに適当なファイル名でxmlファイルを1つ作成します。ここではbutton_back.xmlとします。ボタンの背景に使うので、selectorをルートとして次のようにします。
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="false">
<color android:color="#FFF44336"/>
</item>
<item android:state_pressed="true">
<color android:color="#FFB71C1C"/>
</item>
</selector>
子のitemのandroid:state_pressed
で、タップ中かそうでないかを指定します。ここでは、タップされていないときは#FFF44336
で、タップ中は#FFB71C1C
になるようにしています。
ボタンの背景に指定する
res/drawableにいれたxmlファイルはandroid:background
に@drawable/ファイル名 で指定できます。
<Button
android:id="@android:id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/button_back"
android:text="@string/send"/>
タップしていないときのボタンは次のようになります。
タップ中のボタンは次のようになります。