0

我正在开发一个 android 应用程序,其中我在我的应用程序的主屏幕上为用户显示日期和时间。我正在使用下面的代码。

        SimpleDateFormat sdf = new SimpleDateFormat("EE, dd MMM yyyy");
        String strtDates = sdf.format(cal.getTime());
        textviewfordate.setText(strtDates);

        clk = (DigitalClock)findViewById(R.id.digitalClock);

但是,当时间更改时,如果不刷新屏幕,日期不会更新。例如,当时间为晚上 11:59:00 并且时间更改为上午 12:00:00 时,将不会更新日期。只有在刷新屏幕时才会更新。我希望在不刷新屏幕的情况下自动更改日期。

不知道怎么办!请帮忙!谢谢!

4

1 回答 1

0

如果您将文本设置为 textview in onCreate(),则在调用该方法时它将只运行一次,并且不会在每次时间更改时更新。

根据您的需要,您必须使用handlerorexecutor或任何其他thread在每个用户定义的时间运行的,并且您必须将当前时间文本设置为其中的 textview。因此,文本将被更新。

并参考以下链接,它们将为您提供帮助:

Android每X秒运行一次服务线程

如何在 Android 上的 Java 中每两秒执行一个函数?

在Android中每10秒显示一次数据

于 2013-10-26T06:06:25.373 回答