Java Android ImageButton焦点不变

Java Android ImageButton焦点不变,java,android,xml,imagebutton,Java,Android,Xml,Imagebutton,我有4个按钮,它们都是以@null为背景的图像按钮 在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="@nu

我有4个按钮,它们都是以@null为背景的图像按钮

在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 -->
然而,当用户按下屏幕上的按钮时,它不会改变,因为它会将视图切换到其他内容。在我尚未初始化的按钮上,ie附加了一个方法,但这种图像切换效果很好

在视图更改之前,我如何更改按钮上的图像

谢谢


Ben

您是否也尝试将所选州添加到您的州列表中?我不记得我是否有完全相同的场景,但我知道我必须开始将此添加到我的一些状态列表Drawable中以使它们工作,我相信这正是您所经历的

 <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 -->

我试过了,但没用,谢谢。只要我按下按钮,它就会切换视图,根本没有图像切换:如果我按下按钮,它就会改变图像,如果我正常按下它,它就不会改变。也许加载时间太长了?你所说的切换视图是什么意思?我的意思是在onClick中它是这样做的:setcontentviewnewotherviewthis;您可能需要将android:focusable=true属性添加到图像按钮中。