我即将写一个小测验应用程序。我有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中,Programm将按钮上的文本与保存的答案进行比较并启动闪烁(尚未编码)。在onTouchEvent上它改变了问题。
现在:onTouchEvent应该只是"激活"当程序刚刚完成检查过程时。之后程序不应该对OnEventTouch作出反应。
答案 0 :(得分:1)
如果您不需要处理触摸事件,只需返回false onTouchEvent并让触摸通过。
@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;
}