我想在用户将tableView
滚动到顶部时进行分页,因为我使用了此UIScrollView
方法。但它会多次调用api
答案 0 :(得分:1)
ry this
当您的服务器提供数据计数
时-(void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath{
if (indexPath.row == 0) { // indexpath.row == 0 means top cell in tableViewCell
if (arrNews.count < totalPageCount ) { //totalPageCount means total number of data exist in server which is needs in server resopnse
[self getDataFromServer];
}
}
}
当您的服务器未提供数据计数
时-(void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath{
if (indexPath.row == 0) { // indexpath.row == 0 means top cell in tableViewCell
if (isMoreData) { //isMoreData is bolean you need to disable while not data found from server
[self getDataFromServer];
}
}
}
答案 1 :(得分:0)
您可以使用scrollViewDidScroll
如果内容偏移y位置<= 20并且您没有到达最后一个项目,请调用您的加载更多服务(分页记录)
- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
if (scrollView.contentOffset.y <= 20 && !reachedEndOfItems) {
currentOffset = self.wallProfileTableView.contentOffset;
[self loadMoreMessage];
}
}
它类似于我们在向下滚动时加载聊天