1,子线程创建CountDownTimer对象问题
public class Test{
.........
private volatile CountDownTimer mCountDownTimer = new CountDownTimer(15000, 1000) {
@Override
public void onTick(long millisUntilFinished) {
Log.i("CountDownTimer", "millisUntilFinished = " + millisUntilFinished);
}
@Override
public void onFinish() {
Log.i("CountDownTimer", "onFinish");
}
};
......
}
如果这个Test是在子线程中创建的话你在子线程中调用CountDownTimer的函数是没有反应的,需要到主线程中去创建CountDownTimer对象才能在子线程中调用CountDownTimer的方法;如下
public class Test{
.........
private volatile CountDownTimer mCountDownTimer;
public Test() {
initCountDownTimer();
}
public void initCountDownTimer() {
mActivity.runOnUiThread(new Runnable() {
@Override
public void run() {
mCountDownTimer = new CountDownTimer(15000, 1000) {
@Override
public void onTick(long millisUntilFinished) {
Log.i("CountDownTimer", "millisUntilFinished = " + millisUntilFinished);
}
@Override
public void onFinish() {
Log.i("CountDownTimer", "onFinish");
}
};
}
});
}
......
}
这个时候你就可以在你想调用 CountDownTimer对象的方法的地方去调用了!
后续问题遇到再做补充!!!!