iOS - 通过我们的用户交互定期更新 UILabel 文本

标签 ios objective-c xcode

我的 UI 上有一些标签显示“2 秒前”、“1 小时前”... 现在我想在没有用户交互的情况下定期更新它们。我怎样才能做到这一点?

最佳答案

使用NSTimer .当屏幕打开并显示标签时,决定下一次更新它的时间。比方说,您刚刚更新了“2 秒前”的标签,接下来您希望用户看到的是“1 分钟前”。您安排一个计时器任务在 58 秒后触发,并提供一个回调选择器来更新标签,并安排计时器的下一次触发。

由于您可能会使用不规则的时间间隔进行更新(第一个小时为 60 秒,接下来的 23 小时为 60 分钟;之后的一天),因此您应该设置计时器而不重复。

不要忘记在 View 消失时取消计时器。

关于iOS - 通过我们的用户交互定期更新 UILabel 文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26300525/

相关文章:

ios - 使用 AES 解密 Base64 编码字符串导致错误状态 4301(缓冲区太小)

ios - UITableViewController 中的 UITableView

ios - 使用不同的开发帐户运行具有相同 bundle ID 的 iOS 应用程序

ios - 如何通过 Swift Package Manager 分发 Swift 库的 iOS 演示应用程序?

ios - UITableView 中可移动但不可编辑的行

objective-c - 带有下划线前缀 : what does this mean? 的合成属性和变量

ios - 新的应用内购买不会显示在 iTunes 应用程序产品页面中

iOS 10 日志框架 : get recent logs at runtime

objective-c - 为什么 Restkit 无法正确解析?

iOS UITapGestureRecognizer 有时不工作