Ios 如何从UITableView中获取可见的顶行

Ios 如何从UITableView中获取可见的顶行,ios,swift,uitableview,uiscrollview,avplayer,Ios,Swift,Uitableview,Uiscrollview,Avplayer,我想在UITableViewtopcell/row中播放视频。我的问题是。如何将视频播放到顶部可见行,以及如何识别UITableView的顶部单元格,同时我们将向上和向下滚动UITableView 您可以使用UITableView的-indexPathsForVisibleRows或-indexPathForRowAtPoint - (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)dec

我想在
UITableView
top
cell/row
中播放视频。我的问题是。如何将视频播放到顶部可见行,以及如何识别
UITableView
的顶部单元格,同时我们将向上和向下滚动
UITableView

您可以使用
UITableView
-indexPathsForVisibleRows
-indexPathForRowAtPoint

- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate{
    NSIndexPath *topVisibleIndexPath = [[self.yourtableView indexPathsForVisibleRows] objectAtIndex:0];
    NSLog(@"top visible cell's section: %i, get row: %i", topVisibleIndexPath.section, topVisibleIndexPath.row);
}

对于额外的

可能有一个替代方案。使用
-(void)tableView:(UITableView*)tableView将显示单元格:(UITableViewCell*)用于rowatindexpath:(nsindepath*)indepath的单元格来加载/初始化视频


-(UITableView单元格*)tableView:(UITableView*)tableView单元格for行索引路径:(nsindepath*)indepath
中,使用
indexPathsForVisibleRows检查顶部单元格并播放该视频。

否,滚动将停止。此时谁是位于顶部的单元格。通过
[tableView indexPathsForVisibleRows]
@Raptor返回的第一个元素,您可以知道哪个单元格是最顶部可见的。无法保证第一个元素是第一个可见行。@Jeff请详细说明。(这个问题已经问了4年了,上下文可能不再有效……@Raptor,
indexPathsForVisibleRows
visibleCells
的文档没有保证返回数组中元素的顺序,因此没有根据地假设第一个元素匹配顶部可见行。方法
indexPathForRowAtPoint
将是查找最上面一行的更好方法。我已经使用了它。但这对我来说并不完美。我想像Facebook滚动页面一样播放视频。当我们滚动页面然后视频自动播放时,您需要自定义一些内容,例如,当您的滚动停止时,获取当前/顶部单元格索引,此时您需要使用web view或其他方式播放视频,然后重新加载当前单元格或重新加载整个单元格,simple@SankalapYadurajSingh--任何疑问,当滚动停止时,当您的单元格包含视频时,自定义视频帧并使用autoplay播放,明白了吗?是的,我想这样做。@Sankalapidurajsingh--请看此链接可能对您有帮助,willDisplayCell在cellForRowAtIndexPath之后调用。