关于“按钮”按下效果两种设计方法

使用Button时为了让用户有“按下”的效果,有两种实现方式:
1.在代码里面。
imageButton.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;
                        }
                        
                });
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>

posted on 2014-05-06 16:01  leihupqrst  阅读(397)  评论(0编辑  收藏  举报

导航