我正在使用一个具有良好UI的iOS应用程序来查看用户的 friend ,该应用程序当前处于启用了分页和100×100pt图片的垂直ScrollView中。但是,有500多个 friend ,这效率极低且缓慢,将所有这些图片立即加载到内存中。我想做的是使用TableView并在加载单元格时加载图像,但是我非常喜欢启用ScrollView并启用分页的效果。
您如何建议我将此功能添加到TableView?
最佳答案
将UITableView的pagingEnabled
属性设置为YES始终是一个选项。但是,默认的UIScrollView分页将自动以UITableView的框架高度的倍数进行分页(不太可能与UITableViewCells的高度相同),因此您可能需要实现scrollViewWillEndDragging:withVelocity:targetContentOffset.
此方法。当UIScrollView(或UITableView)开始减速时调用,它允许我们指定UIScrollView应该在哪里完成移动。
-(void)scrollViewWillEndDragging:(UIScrollView *)scrollView
withVelocity:(CGPoint)velocity
targetContentOffset:(inout CGPoint*)targetContentOffset
{
//Intercept and recalculate the desired content offset
CGPoint targetOffset = [self recalculateUsingTargetContentOffset:targetContentOffset];
//Reset the targetContentOffset with your recalculated value
targetContentOffset->y = targetOffset.y;
}
您可能需要查看这篇文章(UITableView w/ paging & momentum),以了解如何调整目标内容偏移量重新计算方法以适合您的需求。