【问题标题】:Countdown timer on UITableViewCell, Scrolling/laggy issue of UITableViewUITableViewCell 上的倒数计时器,UITableView 的滚动/滞后问题
【发布时间】:2015-03-23 06:16:04
【问题描述】:

根据我的标题,我有表格视图,它在每一行中显示彩票,每张彩票都有它的详细视图。门票有自己的抽奖时间。 动态门票显示在桌子视图上,现在考虑桌子上有 10 到 15 张门票。第一次一切正常。

但是当我上下滚动表 5 到 6 次或详细了解票 5 到 6 次时,表会挂起。 问题只是 NSTimer,我每秒重复一次计时器。当我被移除计时器时,桌子没有挂起。 我也尝试通过以下代码删除单元格的可重用性,但没有奏效。

NSString *CellIdentifier = [NSString stringWithFormat:@"S%1dR%1d",indexPath.section,indexPath.row]; // I know it's bad for us. :(

我还 isValidnil 在创建 timer 之前 有人收到过这样的问题,或者有人可以给我建议以解决我的问题吗?

【问题讨论】:

标签: ios iphone uitableview cocoa-touch


【解决方案1】:

花了 11 个小时后,我找到了适合我的解决方案。早些时候我在做什么?我使用repeats:YES为每一行/票创建了计时器,因此计时器方法将每1分钟连续调用一次。就这样出现了问题。

我删除了每一行的每个计时器的逻辑,并将单个计时器放入 viewWillAppear (或任何你想放的东西) 方法应用 repeats:YES 并在计时器方法中使用我的以下逻辑

- (void) calculateTimer
{
    // Here count down timer is only for visible rows not for each rows.

    NSArray *listOFCurrentCell = [myTableView visibleCells]; // Returns the table cells that are visible in the table view.
    for(customCell *theMycustomCell in listOFCurrentCell)
    {
        => Here I put logic of count down timer
        => It's will be only for those row that display currently 
    }
}

希望上述逻辑适用于像我一样遇到同样问题的人。

【讨论】:

    猜你喜欢
    • 2022-10-12
    • 1970-01-01
    • 1970-01-01
    • 2020-10-22
    • 2015-09-24
    • 1970-01-01
    • 1970-01-01
    • 2014-11-11
    • 1970-01-01
    相关资源
    最近更新 更多