2

我正在使用scrollToRowAtIndexPath:将 UITableView 滚动到顶部。然后我处理scrollViewDidEndScrollingAnimation:. 滚动后,它应该执行一个动作。我的问题是,当它不滚动时——例如,在我调用该方法之前,表格视图已经在顶部——该操作不会被调用scrollViewDidEndScrollingAnimation:。如何确定 UITableView 是否已经在顶部?

4

4 回答 4

9
if (yourTableView.contentOffset.y > 0)
{
    // yourTableView is not on top.
}
else
{
    // yourTableView is already on top.
}
于 2013-05-30T09:52:44.757 回答
2

使用 UITableView contentOffset属性。如果contentOffset.y为 0,则表在顶部,否则不是。

希望它可以帮助你。

于 2013-05-30T09:54:28.920 回答
0

您需要使用 UIScrollViewDelegate 函数- (void)scrollViewDidEndDecelerating:(UIScrollView *)aScrollView并确定该滚动视图的 y 轴上的内容偏移是否设置为 0。如果它为 0,那么您已经到达顶部。

于 2013-05-30T09:48:35.040 回答
0

当您向上滚动时tableView(_:cellForRowAt)被调用以显示行并且indexPath.row == 0当您位于 tableview 的顶部时

于 2019-07-22T21:31:46.893 回答