gpt4 book ai didi

java - 如何在特定情况下捕获OnTouchEvent?

转载 作者:行者123 更新时间:2023-12-01 12:58:34 25 4
gpt4 key购买 nike

我即将编写一个小测验应用程序。我有 4 个按钮,代表答案的可能性。当按下一个按钮时,它应该闪烁红色或绿色以指示正确或错误。到目前为止没有问题。

但下一步应该是滑出旧问题并滑入新问题。这应该通过用户触摸屏幕上的任意位置来启动。

我怎样才能实现这个目标?我必须使用哪些方法?

代码:

@Override
public void onClick(View v) {
Button button = (Button)findViewById(v.getId());

if(button.getText().equals(quizWorld.getCurrentQuestion().getRightAnswer())){
//right
}else{
//wrong
}
}

@Override
public boolean onTouchEvent(MotionEvent event){
switch(event.getAction()){
case MotionEvent.ACTION_UP:
//Game Over?
if(quizWorld.swapQuestion()==false){
viewFlipper.setDisplayedChild(1);
}
break;
}
return true;
}

仅供说明:在 onClick 中,程序将按钮上的文本与保存的答案进行比较,并启动闪烁(尚未编码)。在 onTouchEvent 上它改变了问题。

现在:onTouchEvent 应该仅在程序刚刚完成检查过程时“激活”。之后程序不应对 OnEventTouch 使用react。

最佳答案

如果不需要处理触摸事件,只需在onTouchEvent上返回false,让触摸通过即可。

@Override
public boolean onTouchEvent(MotionEvent event){
if (I don't need this touch)
{
return false;
}
switch(event.getAction()){
case MotionEvent.ACTION_UP:
//Game Over?
if(quizWorld.swapQuestion()==false){
viewFlipper.setDisplayedChild(1);
}
break;
}
return true;
}

关于java - 如何在特定情况下捕获OnTouchEvent?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23692216/

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