滚动时更新UITableView

时间:2015-12-08 17:52:53

标签: objective-c uitableview

UITableView的我的数据源每5秒自动更新一次 - 这会在用户滚动并且数据发生变化(行数减少等)时导致一些问题。

处理此问题的最佳方法是什么?如何在用户不滚动时才执行更新?

2 个答案:

答案 0 :(得分:0)

UITableView也是UIScrollView。 Ur UIViewController子项可以设置为UIScrollView委托和句柄方法,因此您可以检测用户是否正在滚动。 如果你想在UITableView中重新加载数据,只需调用reloadData方法

答案 1 :(得分:0)

如果您使用的是UITableView,则可能是您已经在实施UITableViewDelegate以填充数据表。

协议UITableViewDelegate符合UIScrollViewDelegate,因此您需要做的就是实施方法-scrollViewWillBeginDragging-scrollViewDidScroll

所以你的代码应该是这样的:

- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView {
    if (scrollView == self.tableView){
       //your code when user is scrolling
    }
    else
    {
      //your code when user is not scrolling
    }
}