我开发了一个应用程序,我有一个时间时钟在它,现在我从系统时钟在一个活动创建和显示它的时间,但这一个是不更新时,系统时间的变化..是否有任何方法来cupdating的时间,当系统时间变化?
谢谢
你总是可以子类化一个TimerTask,并创建一个线程,在获取系统时间后(每秒)更新视图。
public class TimerActivity extends Activity {
TextView hTextView;
Date d;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
hTextView = (TextView)findViewById(R.id.idTextView);
MyTimerTask myTask = new MyTimerTask();
Timer myTimer = new Timer();
d=calendar.getInstance().getTime();
hTextView.setText(d);
myTimer.schedule(myTask, 1000, 1000);
}
class MyTimerTask extends TimerTask {
public void run() {
if(TimerActivity.this!=null && !TimerActivity.this.isFinishing()){
d=new Date(d.getTime()+1000);
updateOnUIThread(d);
}
}
}
}