Вы можете попробовать использовать UITableView
-indexPathsForVisibleRows
или -indexPathForRowAtPoint
.
Например, предположим, что вы хотите напечатать indexPath самой верхней видимой ячейки, когда вы прекращаете перетаскивать свою таблицу. Вы могли бы сделать что-то вроде этого:
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate{
NSIndexPath *firstVisibleIndexPath = [[self.tableView indexPathsForVisibleRows] objectAtIndex:0];
NSLog(@"first visible cell's section: %i, row: %i", firstVisibleIndexPath.section, firstVisibleIndexPath.row);
}
Для Swift 3.0
let topVisibleIndexPath:IndexPath = self.tableView.indexPathsForVisibleRows![0]