我使用“ scrollViewDidEndDecelerating”加载更多数据,当用户转到列表数据滚动条和同一页上的最后一页时(此页)我使用UICollectionView,并且当用户转到最后一页时,我认为加载更多数据
但是scrollViewDidEndDecelerating不适用于UICollectionView,请帮助
这是我的代码
我认为scrollViewDidEndDecelerating对UICollexction和Tableview都适用,但是当我尝试添加一个SCrollerViewDidEndDec时,这会返回错误,因为我已经定义了一次
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
float endScrolling = scrollView.contentOffset.y + scrollView.frame.size.height;
if (endScrolling >= scrollView.contentSize.height)
{
HUD = [[MBProgressHUD alloc] initWithView:self.view];
HUD.frame = CGRectMake(95, 330, 140, 150);
HUD.labelText = @"Load More ...";
HUD.detailsLabelText = @"Load More ...";
HUD.mode = MBProgressHUDModeIndeterminate;
[HUD show:YES];
[self.view addSubview:HUD];
fromValue =fromValue+4; //[NSString stringWithFormat:@"%d", endvalue];
[self getdata2];
}
}
最佳答案
您应该同时实现scrollViewDidEndDecelerating
和scrollViewDidEndDragging:willDecelerate:
完整的解决方案包括检查willDecelerate
是否为NO
并调用与scrollViewDidEndDecelerating
中相同的逻辑-如果您停止不减速地滚动,则调用此委托方法。
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate {
if (!decelerate) {
// preloading logic
}
}
关于ios - ios scrollViewDidEndDecelerating无法使用UICollectionView,但适用于UITableView,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23709845/