Android - 设置数字时钟仅以24小时格式显示时间

时间:2013-03-27 13:43:09

标签: android

我有以下代码才能显示数字时钟。基本上它工作正常,但我希望它只显示24小时格式,因此如果用户要在24或12小时fomrats之间更改设置中的格式,它将不会影响我的应用程序中显示的时间。

    DigitalClock digital_clock_4inches = (DigitalClock)findViewById(R.id.bge_digital_clock_4inches);
digital_clock_4inches.setTypeface(bge_currentDateandTimeFont_4inches);

我理解接管DigitalClock代码,如此处所见http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/1.5_r4/android/widget/DigitalClock.java是一个选项,如果是这种情况,代码中会发生一次更改。

提前感谢您的帮助。


TIMER:

    Timer timer = new Timer();
timer.schedule(new TimerTask() {
    @Override
    public void run() {

    }
},0,1000);//Update text every second

2 个答案:

答案 0 :(得分:0)

使用显示24小时格式的日历创建自己的时钟。

Calendar c = Calendar.getInstance(); 
int seconds = c.get(Calendar.SECOND); 
int min= c.get(Calendar.MINUTE); 
int hour= c.get(Calendar.HOUR); 
if(c.get(Calendar.AM_PM))//if returns pm add 12 to hour
Textview.append(hour + ":" + min + ":" + seconds );

使用Timer类每秒更新一次。

答案 1 :(得分:0)

在计时器代码中,您应该更新textviews文本:

Timer timer = new Timer()
timer.schedule(new TimerTask() {

@Override
public void run() {
seconds++;
if(seconds == 60){
min+=1;
seconds = 0;}

if(min == 60){
hour+=1;
min = 0;}

if(hour == 24){
hour = 0;
}

Textview.append(hour + ":" + min + ":" + seconds );

}},0,1000);//Update text every second