如何将一个按钮添加到UIScrollView的最后加载更多?

问题描述:

我有一个分页滚动。我想一次只加载75页,当用户到达最后一页时,按钮会显示最后一次滑动。该按钮必须点击以加载更多。如何将一个按钮添加到UIScrollView的最后加载更多?

像你在附图中看到的一样,像ios Zillow应用程序。

我该如何添加此按钮?它是滚动的一部分,还是它只是一个滚动的按钮?

enter image description here

所以我们首先想想我们如何初始化我们的表格视图。我们使用

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int 

返回我们要在表格单元格的数量,所以我们说,我们使用类似

return searchResultsArray.count 

但如果我们希望有一个“加载更多结果”按钮,然后让我们添加1更多细胞

return searchResultsArray.count + 1 

好的,现在我们该如何在这个新细胞中添加按钮?我们想用

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell 

,我们会说

if indexPath.row == searchResultsArray.count 

(记住,数组的计数值比数组中最后一个元素的指数大于1,所以这个if语句基本上是说,“如果这个单元格是负载更多的单元格”)

然后我们将在这个单元格中创建我们的按钮,并且我们可以将一个函数链接到按钮(使用选择器),它将结果添加到searchResultsArray中,并且然后重新加载表(使用tableView.reloadData())

这是你如何处理这个问题,如果它是一个(垂直滚动)表视图,但如果你想在zillow中重新创建水平滚动界面,那么你需要使用一个集合视图,这有点复杂你是iOS开发的新手,但仍然使用上面描述的基本概念。这里有一个很棒的视频来帮助你:https://www.youtube.com/watch?v=Ko9oNhlTwH0

我会建议你去UICollectionView,而不是UIScrollViewUIScrollView你会为你的UIImageView和广告在你的UIScrollView作为比较UICollectionView这将需要更多的内存中创建多个对象,与UICollectionView您可以重复使用同一个单元,因此与UIScrollView相比,UICollectionView消耗的内存将会非常少。

改编职系在末处加入按钮,在你UICollectionView创建两个自定义小区中的一个是显示的UIImageView和一个是显示加载更多按钮,取75个结果的时间和在数据源numberOfItemsInSectionreturn 75 + 1(即你的数组数+ 1 [+1显示负载更多的按钮,当你想要显示它])

现在cellForItemAtIndexPath比较,如果该indexpath.row计数比你更大的阵列计数然后装入电池的负载更多按钮。