0

我制作了一个游戏模块,其中授予用户一分钟的时间来回答问题,然后调用一个意图来显示结果,我的问题是当我在中间退出活动时,它仍然显示完成时间的结果无论我从事什么活动,都在游戏中。

我的计时器代码是

class MyCount extends CountDownTimer{
    public MyCount(long millisInFuture, long countDownInterval) {
    super(millisInFuture, countDownInterval);
    }
    @Override
    public void onFinish() {


        Intent finish= new Intent(QuestionScreen.this,ResultScreen.class);
        finish.putExtra("noofques", Integer.toString(totalquestions));
        finish.putExtra("correct", Integer.toString(score));
        startActivity(finish);
        overridePendingTransition( R.anim.slideinleft, R.anim.slideoutleft);
    }
    @Override
    public void onTick(long millisUntilFinished) {
        if(millisUntilFinished>60000)
        timerview.setText((millisUntilFinished/(1000*60))+1 +" minutes left");
        else
        {
        timerview.setText(millisUntilFinished/1000 +" seconds left");
        }
    }
    }

中间退出游戏的代码是

    public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_BACK) {
        AlertDialog.Builder alertbox = new AlertDialog.Builder(this);
        alertbox.setMessage("Do you really want to quit");
        alertbox.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface arg0, int arg1) {
                Intent info = new Intent(QuestionScreen.this,com.preciselabs.mental_skills.MenuScreen.class);
                info.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                finish();
                startActivity(info);
                overridePendingTransition( R.anim.slideinright, R.anim.slideoutright);
                }
        });
        alertbox.setNegativeButton("No", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface arg0, int arg1) {
           }
        });
        alertbox.show();
    return true;
    }
    return super.onKeyDown(keyCode, event);
    }

我的问题的任何解决方案将不胜感激

4

1 回答 1

0

退出活动时使用 belove 代码..

  mCount.cancel();
  mCount=null;

和 onfinish() 中的布尔值用于 startActivity(finish);

于 2012-12-01T06:00:51.740 回答