有没有办法找到UITableView在任何方向滚动了多少?我对数量不感兴趣。
答案 0 :(得分:2)
您可以通过查看其contentOffset属性轻松获取表视图的确切偏移量。对于垂直滚动,请查看:
tableView.contentOffset.y;
通过此,您可以将您的tableview带到任何特定位置
[theTableView scrollToRowAtIndexPath:[NSIndexPath indexPathForRow:savedScrollPosition inSection:0] atScrollPosition:UITableViewScrollPositionTop animated:NO];
CGPoint point = theTableView.contentOffset;
point .y -= theTableView.rowHeight;
theTableView.contentOffset = point;
您需要在10之后加载更多单元格,您可以使用此逻辑
- (void)scrollViewDidScroll:(UIScrollView *)aScrollView {
CGPoint offset = aScrollView.contentOffset;
CGRect bounds = aScrollView.bounds;
CGSize size = aScrollView.contentSize;
UIEdgeInsets inset = aScrollView.contentInset;
float y = offset.y + bounds.size.height - inset.bottom;
float h = size.height;
// NSLog(@"offset: %f", offset.y);
// NSLog(@"content.height: %f", size.height);
// NSLog(@"bounds.height: %f", bounds.size.height);
// NSLog(@"inset.top: %f", inset.top);
// NSLog(@"inset.bottom: %f", inset.bottom);
// NSLog(@"pos: %f of %f", y, h);
float reload_distance = 10;
if(y > h + reload_distance) {
NSLog(@"load more rows");
}
}
答案 1 :(得分:1)
拖动开始时和结束时,您需要衡量contentOffset
的{{1}}。取两者之间的差异,它将为您提供从初始位置到最终位置的变化量。
UITableView
希望有所帮助!
答案 2 :(得分:0)
你可以使用以下语法找到它......
NSLog(@"scrolled:%f",yourtableview.contentOffset.y);//y for vertical, x for horizontal