这应该是非常类似使用普通的倒数计时器 - 刚刚替补子类的常规定时器实例。此外,将活动传递给构造函数,以便它可以执行任何更新显示所需的操作。
E.g.
mCountDownTimer = MyCountDownTimer(totalMsecs, callInterval, this).start();
凡MyCountownTime会有这样的方法:
public void onTick(long millisUntilFinished) {
float fraction = millisUntilFinished/(float) totalMsecs;
// myActivity is passed in the constructor
mMillisUntilFinished = millisUntilFinished;
// progress bar is based on scale of 1 to 100;
mActivity.progressBar.setProgress((int) (fraction * 100));
}
public void onFinish() {
mMillisUntilFinished = 0;
handleTimeOut();
}
这是假设mActivity在构造函数。我改变了代码,假设调用活动作为一个变量在定时器构造函数中传递并设置为定时器类的成员。
好的,我明白你在说什么了。现在,当定时器结束时,我该如何调用驻留在调用类中的方法? – Allen
有什么想法?我发现你可以访问已传入的活动的变量,但是如何调用属于该活动的方法? – Allen
@艾伦你有没有想过如何做到这一点? –