适用于UITableviewcell的NSTimer与世界时钟应用类似

时间:2010-09-27 16:09:31

标签: iphone objective-c uitableview nstimer

我想在UITableview中构建一些简单的倒计时器。我注意到世界时钟应用程序在每个行中都有动画时钟。触发NSTimer来更新每个表行的最佳方法是什么?可以运行单个计时器来更新所有单元格,还是应该有一个自定义视图子类,内置计时器添加到每一行?

我只是想做出正确的行动。

2 个答案:

答案 0 :(得分:6)

一个计时器就足够了。当它触发时,向表视图询问可见单元格并逐个更新它们。您也可以在计时器触发时调用reloadData,但根据您绘制单元格的方式,您可能需要做更多的工作而不能使用动画。

答案 1 :(得分:3)

只要知道你需要安排计时器每秒发射一次以上。 NSTimer不是精确设备 - 您在指定的持续时间后为下一个可用的处理器插槽安排它。因此1秒的NSTimer不会在一秒钟内发射,并且实际上会随着时间的推移积累相当多的误差。您希望它每秒运行几次,查看当前时间,注意一秒钟过去,并执行适合该事实的UI /数据更新。