Я использовал scrollView, чтобы определить конец tableView.
override func scrollViewDidScroll(_ scrollView: UIScrollView) {
let height = scrollView.frame.size.height
let contentYoffset = scrollView.contentOffset.y
let distanceFromBottom = scrollView.contentSize.height - contentYoffset
if distanceFromBottom < height {
// end of tableView
}
}
, и я также использовал Bool , чтобы понять, когда впервые отображался нижний колонтитул