Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/208.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android onTouch侦听器背景颜色更改_Android_Ontouchlistener - Fatal编程技术网

Android onTouch侦听器背景颜色更改

Android onTouch侦听器背景颜色更改,android,ontouchlistener,Android,Ontouchlistener,我使用onTouchListener在用户手指向下时更改背景颜色,在用户手指向上时更改回默认值。问题是,当用户的手指向下时,背景颜色会发生变化,但如果用户不抬起手指并开始滚动,背景颜色不会变为默认颜色。请帮忙 下面是我的代码: V.setOnTouchListener(new OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { swi

我使用onTouchListener在用户手指向下时更改背景颜色,在用户手指向上时更改回默认值。问题是,当用户的手指向下时,背景颜色会发生变化,但如果用户不抬起手指并开始滚动,背景颜色不会变为默认颜色。请帮忙

下面是我的代码:

    V.setOnTouchListener(new OnTouchListener() {
    @Override
       public boolean onTouch(View v, MotionEvent event) {
           switch(event.getAction()) {
               case MotionEvent.ACTION_DOWN:
                    V.setBackgroundColor(Color.BLUE);
                    break;
               case MotionEvent.ACTION_UP:
                    V.setBackgroundColor(Color.BLACK);
                    break;
           }
        return true;
      }
   });

我也尝试返回false,但结果是相同的,您可以使用几种不同的方法。您可以查看MotionEvent.ACTION\当您在onTouch中收到它时,移动并执行操作。您可以在外面查看MotionEvent.ACTION\u 看看他们是否离开了你要检查的地区

您还可以在滚动视图上放置侦听器,并在其移动时更改背景


或者,您可以使用一个手势监听器并检测它。

您可以尝试在case条件中使用小写的“v”。