Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/190.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
活动和倒计时之间的android交互_Android_Android Activity_Countdowntimer - Fatal编程技术网

活动和倒计时之间的android交互

活动和倒计时之间的android交互,android,android-activity,countdowntimer,Android,Android Activity,Countdowntimer,我有几个活动需要使用倒计时: cdt = new CountDownTimer(20000, 1000) { public void onTick(long millisUntilFinished) { tv.setText("" + millisUntilFinished / 1000); if (millisUntilFinished / 1000 == 5){ ct = MediaPlayer

我有几个活动需要使用倒计时:

cdt = new CountDownTimer(20000, 1000) {

        public void onTick(long millisUntilFinished) {
            tv.setText("" + millisUntilFinished / 1000);
            if (millisUntilFinished / 1000 == 5){
                ct = MediaPlayer.create(Fractions.this, R.raw.clock_tik);
                ct.setOnCompletionListener(new OnCompletionListener() {

                    @Override
                    public void onCompletion(MediaPlayer ct) {
                        ct.reset();
                        ct.release();   
                    }
                });
                if (isVisible)
                    ct.start();
            }
        }

        public void onFinish() {
            tv.setText("0");

            MediaPlayer mp = MediaPlayer.create(Fractions.this, R.raw.end);
            mp.setOnCompletionListener(new OnCompletionListener() {

                @Override
                public void onCompletion(MediaPlayer mp) {
                    mp.reset();
                    mp.release();   
                }
            });
            if (isVisible)
                mp.start();

            Intent intent = new Intent(Questions.this, Results.class);
            intent.putExtra("numberOfCorrectAnswers", numberOfCorrectAnswers);
            intent.putExtra("numberOfQuestions", numberOfQuestions);
            intent.putExtra("nameOfTable", "questions");
            startActivity(intent);
            overridePendingTransition(R.anim.transitions_fade1, R.anim.transitions_fade2);
            finish();
        }
    }.start();
当它在每个活动的onCreate中时,它工作得很好,但是 我想把它放在一个单独的类中:

public class myCountDownTimer extends CountDownTimer
我面临着几个问题: 1.myCountDownTimer如何知道在更改活动时要传递的变量值(putExtra中的变量)?这些变量随着时间的推移而变化,所以我不能将它们传递到构造函数中。 2.我无法从myCountDownTimer类调用overridePendingTransition。表示myCountDownTimer类型未定义它。
3.我在那里使用的isVisible变量是由activities中的onPause方法设置的。myCountDownTimer如何知道它的值?

您需要一个通用的倒计时器吗?不,但它们都有相同的功能,所以我不希望有重复的代码。我的意思是,倒计时器将始终为每个活动继续,对吗?或者它将始终重置?为了避免代码重复,您可以为所有这些活动创建基类。