自定义UITableViewCell填充计时器?

时间:2014-02-08 06:08:42

标签: ios uitableview

我在UITableViewCell

上显示时间时遇到问题
unsigned long long seconds = milliseconds/1000;
unsigned long long minutes = seconds/60;
unsigned long long hours = minutes/60;

seconds -= minutes * 60;
minutes -= hours * 60;

NSString * result1 = [NSString `enter code here`stringWithFormat:@"%02lluH:%02lluM:%02lluS",hours,minutes,seconds];

self.menushowTime.text = result1;//populate cell label with time

每当我重新加载表视图时,我的计时器以2倍的速度运行,我的意思是非常快。我该如何防止这种情况发生。

2 个答案:

答案 0 :(得分:2)

facing problem when i start scrolling tableview or reloading the tableview.?

是的,因为计时器已附加到NSRunLoop,因此当UI thread忙于制作动画时,NSRunLoop必须停止。它完成动画,然后增加您的计时器。所以计时器在这段时间内不会完美增加。

使用下面一个,

[[NSRunLoop mainRunLoop] addTimer:timer forMode:NSRunLoopCommonModes];

答案 1 :(得分:0)

首先计算分钟数,稍后秒数 将您的代码更改为以下。

minutes -= hours * 60;
seconds -= minutes * 60;