我已经在ButtonNext按钮上实现了一个动画,这样当用户正确回答问题时,buttonNext会像翻转卡片一样动画,从原始面朝上到底部绿色面朝下。
isBlackShowing = false;
if (temp.equals(correct_answer))
{
buttonNext.clearAnimation();
buttonNext.setAnimation(to_middle);
buttonNext.startAnimation(to_middle);
}
@Override
public void onAnimationEnd(Animation animation)
{
if (isBlackShowing == false)
{
buttonNext.setText("Next!");
buttonNext.setBackgroundResource(R.drawable.green_btn);
buttonNext.clearAnimation();
buttonNext.setAnimation(from_middle);
buttonNext.startAnimation(from_middle);
}
isBlackShowing = true;
buttonNext.setEnabled(true);
}
我想只在所有动画完成时启用ButtonNext,即正确显示绿色faceDown。
然而,通过以上代码,我发现该按钮已经启用,如果在动画期间按住按钮,用户可以自由跳转到下一个,下一个和下一个问题。
如何修复上述故障?
感谢!!!
答案 0 :(得分:0)
按照我的建议交换按钮的监听器;
final View.OnClickListener first= new View.OnClickListener() {
@Override
public void onClick(View v) {
result.setText("first");
}
};
final View.OnClickListener second= new View.OnClickListener() {
@Override
public void onClick(View v) {
result.setText("second");
}
};
Button swap= (Button) findViewById(R.id.swap);
final Button btn=(Button) findViewById(R.id.button1);
swap.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(a==1)
{
btn.setOnClickListener(first);
a=2;
}
else{
btn.setOnClickListener(second);
a=1;
}
}
});
我正在使用一个名为swap的按钮来快速测试它并且它有效。看起来这就是你正在寻找的东西。