gpt4 book ai didi

ios - UITableView Pagination willDisplay 一次又一次地快速调用

转载 作者:行者123 更新时间:2023-11-28 07:44:58 24 4
gpt4 key购买 nike

在 stackoverflow 和谷歌上搜索这个问题后,我试图在 UITableView 中实现分页我得到了很多方法,但在所有解决方案中都面临着同样的问题,在 willDisplay 中,最后一个单元格方法一次又一次地调用,所以分页不起作用它在我移动到最后一个单元格之前循环加载数据请指导我 self.isGettingMoreData 在获取所有数据时为 false。

func tableView(_ tableView: UITableView, willDisplay cell: UITableViewCell, forRowAt indexPath: IndexPath) {
if !self.isGettingMoreData && indexPath.row >= (self.datasource.count - 1) {
self.isGettingMoreData = true
loadmore(pagenum)
}
}

我正在像这样使用 scrolview 但这样我需要在最后拖动以加载更多我不想这样

func scrollViewDidEndDragging(_ scrollView: UIScrollView, willDecelerate decelerate: Bool) {

//Bottom Refresh

if scrollView == table{

if ((scrollView.contentOffset.y + scrollView.frame.size.height) >= scrollView.contentSize.height)
{


if !isLoading{

isLoading = true
loadmore()

最佳答案

要在 TableView 或 Collection View 中实现分页,您可以将代码放在 scrollViewDidScroll 方法中。这是我使用的示例代码:

func scrollViewDidScroll(_ scrollView: UIScrollView) {        

if moreResultsAvailable {
if let lastVisibleIndexPath = self.collectionView.indexPathsForVisibleItems.last {
if let dataCount = dataArray.count {
let dif = abs(dataCount - lastVisibleIndexPath.row)

if dif == 0 {
pageNo += 1
fetchMoreData()
}
}
}
}
}

关于ios - UITableView Pagination willDisplay 一次又一次地快速调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51347548/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com