ImageButton------------------------------------------------>
一、Java 代码:
在drawable目录下添加新的xml文件
button_add_x.xmlimageButton.setOnTouchListener(new OnTouchListener()
{
@Override
public boolean onTouch(View v, MotionEvent event) {
if(event.getAction() == MotionEvent.ACTION_DOWN){
//更改为按下时的背景图片
v.setBackgroundResource(R.drawable.pressed);
}else if(event.getAction() == MotionEvent.ACTION_UP){
//改为抬起时的图片
v.setBackgroundResource(R.drawable.released);
}
return false;
} });
二、1)在drawable目录下添加新的xml文件 button_add_x.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>
2)在布局文件中写
<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>
Button------------------------------------------------>
Java代码:
mBtn = (Button) findViewById(R.id.btn); //btn为layout中的Button ID mBtn.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View arg0,MotionEvent arg1) { if(arg1.getAction() == MotionEvent.ACTION_DOWN) { arg0.setBackgroundResource(R.drawable.pressed); //按下的图片对应pressed } else if(arg1.getAction() == MotionEvent.ACTION_UP) { arg0.setBackgroundResource(R.drawable.normal); //常态下的图片对应normal } else if() //这里还可以继续实现MotionEvent.ACTION_MOVE和MotionEvent.ACTION_CANCEL等实现更多的特效 return false; } });
TextView------------------------------------------------>
改变字体颜色:和Button的区别是改变的是textColor属性,而且selector文件定义在color - ->
1.在layout文件中指定TextView的textColor属性,如android:textColor="@color/textview_color";
2.在color目录下添加新的xml文件textview_color.xml并指定TextView在各种状态下的色值
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_selected="true" android:color="#FFF" /> <item android:state_focused="true" android:color="#FFF" /> <item android:state_pressed="true" android:color="#FFF" /> <item android:color="#000" /> </selector>