2011-10-13 73 views
0

我有4個按鈕,它們都是帶有「@null」作爲背景的圖像按鈕。Android ImageButton不會改變焦點

在XML文件我有:

<ImageButton android:src="@drawable/buttonimgplay" android:id="@+id/imageButton1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="startGame" android:background="@null"></ImageButton> 

buttonimgplay是含有另一種xml文件此:

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
<item android:state_pressed="true" 
     android:drawable="@drawable/playpressed" /> <!-- pressed --> 
<item android:state_focused="true" 
     android:drawable="@drawable/playabitpressed" /> <!-- focused --> 
<item android:drawable="@drawable/playnotpressed" /> <!-- default --> 

然而,當用戶按壓它不屏幕上的按鈕改變,因爲它將視圖切換到別的東西。在我還沒有初始化的按鈕(即附加一個方法),但這種圖像切換工作正常。

任何想法如何在視圖更改之前讓按鈕上的圖像更改?

感謝,

回答

0

你有沒有嘗試添加state_selected您statelist呢?我不記得我是否有完全相同的場景,但我知道我必須將這些添加到我的狀態列表中,以便讓它們工作,我相信這正是您所遇到的。

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
<item android:state_pressed="true" 
     android:drawable="@drawable/playpressed" /> <!-- pressed --> 
<item android:state_focused="true" 
     android:drawable="@drawable/playabitpressed" /> <!-- focused --> 
<item android:state_selected="true" 
     android:drawable="@drawable/playabitpressed" /> <!-- selected --> 
<item android:drawable="@drawable/playnotpressed" /> <!-- default --> 
+0

我試過了,它沒有工作,謝謝。只要我按下按鈕,它只是切換視圖,根本沒有圖像切換:s –

+0

如果我按住按鈕,它會改變圖像,而不是如果我按下它正常。 –

+0

也許加載時間過長? 「切換視圖」是什麼意思? – Rich