第一种: 该方法通过onTouch来实现, btn3 = (ImageButton) findViewById(R.id.ImageButton03); btn3.setOnTouchListener(touchListener3); View.OnTouchListener touchListener = new OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { ImageButton imageBtn = (ImageButton) v; if(event.getAction() == MotionEvent.ACTION_DOWN){ //更改为按下时的背景图片 imageBtn .setImageResource(R.drawable.pressed); }else if(event.getAction() == MotionEvent.ACTION_UP){ //改为抬起时的图片 imageBtn .setImageResource(R.drawable.released); } return false; } }; 第二种: 通过XML来实现 2.用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/button_add" /> <item android:state_pressed="true" android:drawable="@drawable/button_add_pressed" /> <item android:state_focused="true" android:drawable="@drawable/button_add_pressed" /> <item android:drawable="@drawable/button_add" /> </selector> 这个文件放在drawable目录下面。命名为button_add_x.xml 使用的时候 <ImageButton android:id="@+id/ImageButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="#00000000" android:src="@drawable/button_add_x" > </ImageButton> |