iphone - 如何获取UITableview可见路径和更多行

标签 iphone ios uitableview

现在我正在获取可见表格 View 单元格的索引路径。但是我想从可见行中获取另外 3 个索引路径,我该怎么做?

NSArray *visiblePaths = [tblView indexPathsForVisibleRows];

最佳答案

假设只有一个部分,您只需创建它们即可,注意该部分的最大行数:

NSMutableArray *visiblePaths = [tblView indexPathsForVisibleRows] mutableCopy];
NSInteger lastIndexPath = [visiblePaths lastObject];
NSInteger lastRow = lastIndexPath.row;
NSInteger extraRows = 3;
NSInteger maxRow = MIN(lastRow+extraRows, [self tableView:tblView numberOfRowsInSection:0] - 1);

for (int i = lastRow+1; i < maxRow; i++) {
    NSIndexPath *newPath = [NSIndexPath indexPathForRow:i inSection:0];
    [visiblePaths addObject:newPath];
}

它也适用于更多部分(和/或第一个可见之前的行)。希望人们清楚如何扩展它来满足这些要求。

关于iphone - 如何获取UITableview可见路径和更多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15363442/

相关文章:

ios - CollectionView.DeleteItems 抛出异常 NSInternalInconsistencyException

ios - 需要像 UISearchDisplayController 一样使用没有 UITableViewController 的 UISearchController

ios - 分支io更改子域

ios - 由于内存错误 iOS 终止?

iphone - 在 UIView 中显示相机提要

java - 在浏览器中打开 iPad 中的 docx 文件时出现问题

ios - 如何在 Objective-C 中从右上角淡入和展开模态框

ios - 如何从嵌入在 Swift 中的 UITableView 中的文本字段中检索数据?

iphone - 单点触控在横向模式和纵向模式下旋转

iphone - 将项目添加到 NSUserdefault 中的数组