如何每秒更新一次带有日期的文本视图

时间:2019-04-24 05:37:15

标签: android datetime kotlin

resultLabel.text = "${SimpleDateFormat("MM/dd hh:mm").format(Date())}"

此代码有效,但我不知道yu如何每秒更新一次resultLabel.text

如何获得像Kotlin中的时钟那样的更新时间和日期?

2 个答案:

答案 0 :(得分:2)

您可以使用Timer类来更新值。

val timer = Timer()
        timer?.scheduleAtFixedRate(object : TimerTask() {
            override fun run() {
                updateTimer()
            }
        }, 0, 1000)


private fun updateTimer() {
        runOnUiThread {
            resultLabel.text = "${SimpleDateFormat("MM/dd hh:mm").format(Date())}"
        }
    }

这是停止时间的方法。

private fun stopTimer() {
        if (timer != null) {
            timer?.cancel()
            timer?.purge()
            timer = null
        }
    }

答案 1 :(得分:0)

尝试此操作每秒更新一次textview

Handler handler = new Handler();

final Runnable r = new Runnable() {
    public void run() {
        tv.append("Hello World");
        resultLabel.text = "${SimpleDateFormat("MM/dd hh:mm").format(Date())}"
    }
};

调用此按钮可开始每秒更新一次文本视图

handler.postDelayed(r, 1000);