获取系统时间,并且跟随时间变化,效果类似 11:20 AM
在activity中启用一个循环的定时器,不停调用refreshTopTimeState();方法,用来刷新时间
//刷新时间
CountDownTimer cdt = new CountDownTimer(Integer.MAX_VALUE, 1000) {
public void onTick(long millisUntilFinished) {
refreshTopTimeState();
}
@Override
public void onFinish() {
}
};
cdt.start();
刷新时间的方法,并且更新ui
public static void refreshTopTimeState(){
Time t=new Time(); // or Time t=new Time("GMT+8"); 加上Time Zone资料。
t.setToNow(); // 取得系统时间。
int hour = t.hour; // 0-23
int minute = t.minute;
String minuteString = String.valueOf(minute);
if(minute<10){//防止分钟格式不正确
minuteString = "0"+minuteString;
}
top_time.setText(hour+":"+minuteString);
if(hour>=12 &&minute>0){
top_time2.setText(" PM");
}else
top_time2.setText(" AM");
}