android中imagebutton设置按下效果,按下之后没有反映
需要设置的按钮为 button1我先在布局文件中声明了button1
<ImageButton
android:background="#e0000000"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/button3"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_marginLeft="88dp"
android:layout_marginTop="210dp">
</ImageButton>
然后在activity中定义了一个imagebutton1按钮
ImageButton button1;
紧接着设置了图片
button1=(ImageButton)findViewById(R.id.button1);
button1.setImageResource(R.drawable.button1);
button1.setVisibility(View.VISIBLE);
然后调用了函数
button1.setOnTouchListener(new anxiabutton1());
我在activity中加入了一个内部类
class anxiabutton1 implements OnTouchListener{
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
if(event.getAction() == MotionEvent.ACTION_DOWN)
{
//更改为按下时的背景图片
v.setBackgroundResource(R.drawable.anxiabutton1);
}else if(event.getAction() == MotionEvent.ACTION_UP)
{
//改为抬起时的图片
v.setBackgroundResource(R.drawable.button1);
}
return false;
}
}
其中anxiabutton1和button1是两个不同的图片,但是运行之后,按下图片不变,还是原来的图片
没有反映,请问这是为什么? --------------------编程问答-------------------- 求解啊~~~ --------------------编程问答-------------------- 在XML 文件里加上<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="false" android:drawable="@drawable/tiandao" />
<item android:state_focused="true" android:drawable="@drawable/tiandao" />
<item android:state_pressed="true" android:drawable="@drawable/tiandaohuan" />
</selector> --------------------编程问答-------------------- @drawable/tiandao"
这个是 没按之前的图片
@drawable/tiandaohuan" />
这个是 换完之后的图片
补充:Java , Eclipse