有一个按钮的最佳策略是当手指按下它时有一个图像而不是另一个图像?

时间:2012-03-07 16:16:43

标签: android button imageview

实际上我有一个带有图像的ImageView和一个onclicklistener,图像就像按钮一样工作。

我需要在手指按下按钮时添加另一张图像。我想这样做:

movement.setOnClickListener(new OnClickListener() {
                public void onClick(View v) {
                    if (movement_mode){
                        movement_mode=false;
                        movement.setImageBitmap(Util.loadImage("/desplaz_inactivo"));                
                    }
                    else{
                        movement_mode=true;
                        movement.setImageBitmap(Util.loadImage("/desplaz_activo"));
                    }
                }
            }); 

但我认为这不是实现它的公平方式......我认为必须是另一种简单快捷的方法来实现这一目标。

请告诉我非XML策略,我没有使用XML文件进行编程。

谢谢

1 个答案:

答案 0 :(得分:0)

解决:

pagelist= new ImageButton(this);
        selector(pagelist, R.drawable.but_pagelist_up,R.drawable.but_pagelist_down);
        rl.addView(pagelist);

public void selector(ImageButton b, int normal_image, int pressed_image)
    {
        StateListDrawable states = new StateListDrawable();
        states.addState(new int[] {android.R.attr.state_pressed},
            getResources().getDrawable(pressed_image));         
       states.addState(new int[] { },
            getResources().getDrawable(normal_image));      
        b.setBackgroundDrawable(states);
    }