0

我的数字时钟在我的模拟器中没有改变时间。

我怎么可能编码我的时钟以每秒更改一次?

这是我尝试过的:

final Calendar c = Calendar.getInstance();
int mYear  = c.get(Calendar.YEAR);
int mMonth = c.get(Calendar.MONTH);
int mDay   = c.get(Calendar.DAY_OF_MONTH);
a = ("" + mMonth + "/" + mDay + "/" + mYear);
txtDisplay.setText(a);

此代码不会更改时间。任何帮助,将不胜感激。谢谢你。

4

2 回答 2

0

如果你只想显示时间,试试这个。

Time time = new Time();
int hour = time.hour;
int min = time.minute;
int sec = time.second;
a = (hour+":"+min+":"+sec);
txtDisplay.setText(a);
于 2013-06-11T02:08:34.700 回答
0

我认为您应该使用这样的调度程序来安排何时更改显示,然后像 Torcellite 显示的那样设置它:

ScheduledExecutorService scheduler =
    Executors.newSingleThreadScheduledExecutor();

scheduler.scheduleAtFixedRate
      (new Runnable() {
         public void run() {
            Time time = new Time();
            int hour = time.hour;
            int min = time.minute;
            int sec = time.second;
            txtDisplay.setText(hour+":"+min+":"+sec);

         }
      }, 0, 1, TimeUnit.SECONDS);
于 2013-06-11T02:12:04.690 回答