2011-10-25 2 views
2

画像ボタンをクリックすると、次のセレクタを使用して画像ボタンを変更します。しかし、これはほとんどの時間では機能しません。いくつかのボタンのためだけに動作します。 画像ボタンをクリックしたときにSelector.xmlが機能しない

<ImageButton 
    android:layout_width="wrap_content" android:layout_height="wrap_content" 
    android:id="@+id/btnMap" android:layout_centerInParent="true" android:src="@drawable/mapselector" 
    android:background="@drawable/map" android:scaleType="fitXY" 
    android:layout_alignParentBottom="true"> 
</ImageButton> 

、このようにやって、ここに原因が

mapselector.xml 
<?xml version="1.0" encoding="utf-8"?> 

    <selector xmlns:android="http://schemas.android.com/apk/res/android"> 
     <!-- Button Pressed --> 
     <item android:state_focused="true" android:state_pressed="true" 
    android:drawable="@drawable/mapiconover"/> 
</selector> 

、ボタンにあるもの

を知らないが、私はクリックしたときに静止画像が変更されていません。

これはなんですか?

+0

の背景としてそのxmlファイルを追加 –

+0

@ Kurtis..セレクタの名前はmapselector.xmlです。下の画像ボタンに設定しました。 – tejas

+1

あなたはこのような作成をしています。この回答に従ってくださいhttp://stackoverflow.com/questions/7567521/making-a-button-look-pressed-in/7568010#7568010 –

答えて

9

あなたがのImageButtonのXMLで次のように作成しています

このようなボタンイメージを使用してxmlファイルを作成

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
<item 
    android:state_pressed="true" 
    android:drawable="@drawable/backbutton" /> 
    <item 
    android:drawable="@drawable/closebutton" /> 
</selector> 

あなたはあなたのセレクタを持つXMLファイルの名前は何をですか?IMAGEBUTTON

<ImageButton     
    android:layout_height="50px" 
    android:layout_width="50px" 
    android:id="@+id/settings" 
    android:background="@drawable/settings_button" //setting_button in 
                 the xml file    
    android:text="Settings"/> 
+0

@Poolam、settings_buttonはセレクタの名前です。 – tejas

+0

yes、セレクタコード付きドロウアブルフォルダ内のsettings_button.xml .. –

+0

私にupvoteしてください。 –

0

ないこれが機能するかどうかを確認しますが、あなたはこれにあなたのセレクタを変更してみてください。これに

<?xml version="1.0" encoding="utf-8"?> 

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <!-- Button Pressed --> 
    <item android:state_focused="true" android:state_pressed="true" 
    android:drawable="@drawable/mapiconover"/> 
    <item android:drawable="@drawable/map" /> 

</selector> 

そして、あなたのイメージボタン:

<ImageButton 
    android:layout_width="wrap_content" android:layout_height="wrap_content" 
    android:id="@+id/btnMap" 
    android:layout_centerInParent="true" 
    android:background="@drawable/mapselector" 
    android:scaleType="fitXY" 
    android:layout_alignParentBottom="true"> 
</ImageButton> 
+0

それは私に結果を与えてもいません。 – tejas

関連する問題