如何在恢复之前更新视图?

问题描述

背景

我有一个 Android 应用程序,它在主活动的文本视图中将时间显示为字符串。每过一分钟我都会更新文本。当我的手机上的电源按钮被按下时,手机被锁定并且应用程序暂停(它没有被破坏)。手机解锁后,应用会恢复,一切照常进行。

问题

解锁手机后,应用程序弹出并恢复,但最初,文本视图中显示的时间是应用程序被锁定的时间。大约一秒钟后,我明确设置了恢复时间。

override fun onResume() {
    // Try to make the clock update immediately
    clockView.text = SimpleDateFormat("h:mm").format(Date())
    super.onResume()
}

如何在显示旧值之前更新文本视图? android 是否在做一些时髦的事情,比如在正确恢复/渲染之前显示应用程序的快照?

解决方法

为什么不尝试覆盖 onStart,如果我没记错的话,它是在 onResume 之前调用的,届时应用程序将不会显示给用户。

override fun onStart() {
    clockView.text = SimpleDateFormat("h:mm").format(Date())
    super.onStart()
}