android 实现动态显示当前的时间

我们需要用到Timer和Handler来实现这个功能。

首先,我们需要在代码声明Timer这个类

timer =  new Timer();

	编写一个timeTask方法,定时向handler发送消息,我选择的时间是1秒钟
	
private void timeTask(){
		timer.schedule(new TimerTask() {
			
			@Override
			public void run() {
				handler.sendEmptyMessage(1);
			}
		}, 0, 1000);
	}

然后,声明一个Handler对象,并重写handleMessage方法
private Handler handler = new Handler(){
		public void handleMessage(Message msg) {
			switch (msg.what) {
			case 1:
				
				formatter  = new SimpleDateFormat("yyyy年MM月dd日    HH:mm:ss     ");       
				curDate = new Date(System.currentTimeMillis());//获取当前时间       
				date = formatter.format(curDate);       
				tvDate.setText(date);
				break;

			}
		};
	}; 

最后,别忘了在onStop中将timer cancel掉
 
  
@Override
	public void onStop() {
		timer.cancel();
		super.onStop();
	}


 
  
 
  

你可能感兴趣的:(android开发)