gpt4 book ai didi

android - onTouchEvent 执行两次

转载 作者:IT王子 更新时间:2023-10-28 23:35:54 27 4
gpt4 key购买 nike

谁能向我解释为什么 onTouchEvent 执行了两次,我怎样才能将它设置为只运行一次?我找不到解释。谢谢。

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
_iv = new ImageView(this);

_map = BitmapFactory.decodeResource(getResources(), R.drawable.image);

_iv.setImageBitmap(_map);
_iv.invalidate();

setContentView(_iv);
}

@Override
public boolean onTouchEvent(MotionEvent event) {
double X = event.getX();
double Y = event.getY();

Toast.makeText(this, "X: " + X + " Y: " + Y, Toast.LENGTH_SHORT).show();

return super.onTouchEvent(event);
}

最佳答案

它为每个事件执行。在这种情况下,它将用于 ACTION_DOWNACTION_UP 事件。它还将为 ACTION_MOVE 事件多次执行。

要让它只在一个事件中执行,请执行以下操作:

switch(event.getAction())
{
case MotionEvent.ACTION_DOWN:
** CODE **
break;
case MotionEvent.ACTION_MOVE:
** CODE **
break;
case MotionEvent.ACTION_UP:
** CODE **
break;
}

关于android - onTouchEvent 执行两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7640831/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com