Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/215.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中的某个区域? 我试图创建一个活动,一旦有人点击屏幕上的按钮图像,就会改变背景。释放按钮后,应用程序将切换回正常背景_Android_Button - Fatal编程技术网

如何判断是否有人点击了android中的某个区域? 我试图创建一个活动,一旦有人点击屏幕上的按钮图像,就会改变背景。释放按钮后,应用程序将切换回正常背景

如何判断是否有人点击了android中的某个区域? 我试图创建一个活动,一旦有人点击屏幕上的按钮图像,就会改变背景。释放按钮后,应用程序将切换回正常背景,android,button,Android,Button,到目前为止,我已经试着在“区域”前面放置一个按钮,按下按钮并将其可见性设置为不可见 有更好的方法吗?有没有一种方法可以感觉到这个人是否松开了按钮?(例如,按下按钮时做一些事情,松开按钮时做其他事情) 谢谢,您可以使用画布进行此操作。这样,您只需在画布中间拍摄一幅图像,捕捉该区域的触摸事件,图像就会覆盖。当用户触摸该区域时,请更改画布的背景色。您可以使用画布进行此操作。在这种情况下,您只需拍摄一张显示在画布中间的图像,捕捉区域上的触摸事件,图像就会覆盖。当用户触摸该区域时,更改画布的背景色。您需要

到目前为止,我已经试着在“区域”前面放置一个按钮,按下按钮并将其可见性设置为不可见

有更好的方法吗?有没有一种方法可以感觉到这个人是否松开了按钮?(例如,按下按钮时做一些事情,松开按钮时做其他事情)


谢谢,您可以使用画布进行此操作。这样,您只需在画布中间拍摄一幅图像,捕捉该区域的触摸事件,图像就会覆盖。当用户触摸该区域时,请更改画布的背景色。

您可以使用画布进行此操作。在这种情况下,您只需拍摄一张显示在画布中间的图像,捕捉区域上的触摸事件,图像就会覆盖。当用户触摸该区域时,更改画布的背景色。

您需要类似和的内容

您应该在按钮上启用长单击(setLongClickable(true))。 然后响应onLongClick事件和onTouchEvent(如果操作已启动)

您的事件处理程序应该如下所示:

public boolean onLongClick(View v) {
  changeYourBackground();
  return true;
}

public boolean onTouchEvent(MotionEvent event) {
  if ((event.getAction() == MotionEvent.ACTION_CANCEL)
        || (event.getAction() == MotionEvent.ACTION_UP)) {
     putYourBackgroundBack();
  }
  return super.onTouchEvent(event);
}
你想要像和这样的东西

您应该在按钮上启用长单击(setLongClickable(true))。 然后响应onLongClick事件和onTouchEvent(如果操作已启动)

您的事件处理程序应该如下所示:

public boolean onLongClick(View v) {
  changeYourBackground();
  return true;
}

public boolean onTouchEvent(MotionEvent event) {
  if ((event.getAction() == MotionEvent.ACTION_CANCEL)
        || (event.getAction() == MotionEvent.ACTION_UP)) {
     putYourBackgroundBack();
  }
  return super.onTouchEvent(event);
}

您想通过在中间或空白UI中保留一些视图来执行该操作。您想通过在中间或空白UI中保留一些视图来执行该操作吗?我认为他需要在触摸时改变的内容,并且在未按下时恢复原件。您可以将onTouch侦听器与onTouch和onrelease这两个事件一起使用。应该可以,我不知道确切的安卓代码。我认为他需要一些东西,在触摸时会改变,在未按下时会恢复到原来的状态。您可以将onTouch侦听器与onTouch和onrelease这两个事件一起使用。应该可以,我不知道确切的android代码。听起来不错,但我认为他可能只想实现onTouchEvent(MotionEvent事件),如果它是MotionEvent.ACTION\u DOWN,则更改YourBackground()。这将使图像立即更改,而不是在长时间的单击延迟后更改。如果他希望在触摸时更改图片,则他必须按照您描述的方式进行更改。听起来不错,但我认为他可能只想实现onTouchEvent(MotionEvent事件),如果是MotionEvent.ACTION\u DOWN,则只需执行changeYourBackground()。这将使图像立即改变,而不是在长时间的点击延迟之后。如果他想在触摸时改变图像,那么他必须按照您描述的方式来做。