如何将一个按钮添加到UIScrollView的最后加载更多?
我有一个分页滚动。我想一次只加载75页,当用户到达最后一页时,按钮会显示最后一次滑动。该按钮必须点击以加载更多。如何将一个按钮添加到UIScrollView的最后加载更多?
像你在附图中看到的一样,像ios Zillow应用程序。
我该如何添加此按钮?它是滚动的一部分,还是它只是一个滚动的按钮?
所以我们首先想想我们如何初始化我们的表格视图。我们使用
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
,而不是UIScrollView
与UIScrollView
你会为你的UIImageView
和广告在你的UIScrollView
作为比较UICollectionView
这将需要更多的内存中创建多个对象,与UICollectionView
您可以重复使用同一个单元,因此与UIScrollView
相比,UICollectionView
消耗的内存将会非常少。
改编职系在末处加入按钮,在你UICollectionView创建两个自定义小区中的一个是显示的UIImageView和一个是显示加载更多按钮,取75个结果的时间和在数据源numberOfItemsInSection
return
75 + 1(即你的数组数+ 1 [+1显示负载更多的按钮,当你想要显示它])
现在cellForItemAtIndexPath
比较,如果该indexpath.row
计数比你更大的阵列计数然后装入电池的负载更多按钮。