当刷新发生时(下拉后动作轮正在旋转),我希望能够取消刷新 - 就像 Facebook 应用程序一样。
下拉刷新,虽然还没有完成,如果我拉起来,使微调器在我的视野之外,我停止/取消刷新。
我试图检查 scrollViewDidScroll 所以检查第一个可见行,但动作并不顺利。
关于如何实现这一点的任何更好的想法?
提前致谢!
当刷新发生时(下拉后动作轮正在旋转),我希望能够取消刷新 - 就像 Facebook 应用程序一样。
下拉刷新,虽然还没有完成,如果我拉起来,使微调器在我的视野之外,我停止/取消刷新。
我试图检查 scrollViewDidScroll 所以检查第一个可见行,但动作并不顺利。
关于如何实现这一点的任何更好的想法?
提前致谢!
实际上,刚刚想通了。希望它可以帮助一些:)
开始刷新时,设置某种标志(这里是“刷新”),然后简单地检查 1. 刷新状态 2. 检测 contentOffset 是否被清零。
- (void)scrollViewDidScroll:(UIScrollView *)scrollView{
//NSLog(@"%f",[self.tableView contentOffset].y);
if(refreshing){
if([self.tableView contentOffset].y >= 0){
refreshing = NO;
[self.refreshControl endRefreshing];
}
}
}
要添加到您的解决方案中,您可以使用内部标志来检查它当前是否正在重新冻结
- (void)scrollViewDidScroll:(UIScrollView *)scrollView{{
if (self.refreshControl.refreshing){
[self.refreshControl endRefreshing];
}
}