選択状態を持つコントロールのアイコン設定

タブに表示するアイコン画像など、選択状態で画像の色が変わるような作りにする場合

drawableのフォルダに

  • test_icon.png
  • test_icon_selected.png

という二つのイメージファイルを使うとする

そして、test_icon.xmlというファイルを作り、ファイルに以下のように設定すれば、選択されたときに表示する画像と、普段表示する画像を定義できる。

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
 <!-- When selected, use grey -->
 <item android:drawable="@drawable/test_icon_selected"
 android:state_selected="true" />
 <!-- When not selected, use white-->
 <item android:drawable="@drawable/test_icon" />
</selector>

これを処理から呼び出す場合は

tabSpec.setIndicator("Artists", res.getDrawable(R.drawable.test_icon));

という感じで呼び出す

Android

Posted by GENDOSU