2012-03-13 15 views
4

私は背景色のボタンを作成しますが、それをクリックすると何も表示されません。
ユーザーがボタンを知る必要があるため、クリックした後にボタンに異なる色を表示する必要があります
をクリックします。
これを行う方法がわかりません。
私に提案してください。
ここに私のボタンコードです。 RES /描画可能/ button_bg.xmlに保存クリック後にボタンの色を変更する方法は?

<Button android:textSize="15px" 
     android:id="@+id/button9" 
     android:gravity="center|bottom" 
     android:textColor="@color/myWhiteColor" 
     android:drawableTop="@drawable/math" 
     android:text="@string/HomePage_Math" 
     android:background="@color/myMaroonColor" 
     android:layout_width="54dp" 
     android:layout_height="wrap_content" ></Button> 
+1

使用セレクタhttp://developer.android.com/guide/topi cs/resources/color-list-resource.html –

+1

http://developer.android.com/reference/android/content/res/ColorStateList.html –

答えて

8

// XMLファイル:

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_pressed="true" 
      android:color="#ffff0000"/> <!-- pressed --> 
    <item android:state_focused="true" 
      android:color="#ff0000ff"/> <!-- focused --> 
    <item android:color="#ff000000"/> <!-- default --> 
</selector> 

//ビューにカラーリストを適用します。このレイアウトXML:

<Button android:textSize="15px" 
     android:id="@+id/button9" 
     android:gravity="center|bottom" 
     android:textColor="@color/myWhiteColor" 
     android:drawableTop="@drawable/math" 
     android:text="@string/HomePage_Math" 
     android:background="@drawable/button_bg" 
     android:layout_width="54dp" 
     android:layout_height="wrap_content" ></Button> 
+0

「ttsアプリケーションが予期せず停止しました」というエラーが表示されます...動作しません –

+0

@sandiparmalあなたのdrawableフォルダにxmlを保存し、android:background = "@ drawable/button_bg"として試してみてください。 –

+0

再度同じエラー.... –

0
<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_pressed="true" android:drawable="@color/colorPrimaryDark" /> 
    <item android:state_focused="true" android:drawable="@android:color/holo_green_dark" /> 
    <item android:drawable="@color/colorCartButton" /> 
</selector> 

これは動作します

+0

なぜそれは動作するのですか?素晴らしい答えになるようにいくつかの詳細を追加してください。 – Phiter

関連する問題