单击按钮时重复执行操作

时间:2019-01-14 03:18:24

标签: android ontouchlistener

我有一个运行代码的按钮,该代码每次单击都会将背景更改为随机颜色。我还想让用户只要单击按钮就可以继续更改背景颜色。我相信onTouchListener将是我最好的选择。但是,我现在不正确地执行代码。

我尝试了onLongClickListener,但发现onLongClickListener不能那样工作。

onTouchListener的代码不完整(随机是我按钮的名称):

randomize.setOnTouchListener(new Button.OnTouchListener() {
    @Override
     public boolean onTouch(View v, MotionEvent event) {
     if(event.getAction() == MotionEvent.ACTION_DOWN){
        // start the thread
        return true;
     } else if(event.getAction() == MotionEvent.ACTION_UP){
       // stop the thread
       return true;
     }
     return false;
   }
});

因此,我的目标是能够继续按住按钮并不断改变背景,同时仍然保留按钮的onclick方法。因此,onclick会一次更改背景,连续单击会连续更改背景。

非常感谢大家:)

Ps。我只是android的初学者,所以如果我不太了解,我很抱歉。 :)

1 个答案:

答案 0 :(得分:0)

尝试一下:

   btn.setOnTouchListener(new View.OnTouchListener() {
        @Override
        public boolean onTouch(View v, MotionEvent event) {
            count++;
            Toast.makeText(getApplicationContext(),Integer.toString(count) , Toast.LENGTH_SHORT).show();
            return true;
        }
    });