我有一个分页滚动。我想一次只加载75页,当用户到达最后一页时,最后一次刷卡会显示一个按钮。必须单击该按钮才能加载更多内容。
就像你在附图中看到的ios Zillow应用程序一样。
我应该如何添加此按钮?它是卷轴的一部分还是只是滚动的一个按钮?
答案 0 :(得分:1)
我建议您使用UICollectionView
而不是UIScrollView
和UIScrollView
一样,为UIImageView
创建多个对象并在UIScrollView
中添加对象与UICollectionView
相比,这将占用更多内存,与UICollectionView
相比,您可以重复使用相同的单元格,因此与UICollectionView
相比,UIScrollView
所消耗的内存将会非常少
在最后重新添加添加按钮,在UICollectionView中创建两个自定义单元格,一个是显示UIImageView,另一个是显示“加载更多”按钮,一次获取75个结果,数据源numberOfItemsInSection
{{1} } 75 + 1(即您的数组计数+ 1 [当您想要显示时显示加载更多按钮的+1])
现在在return
比较,如果cellForItemAtIndexPath
计数大于您的数组计数,则加载单元格以加载更多按钮。
答案 1 :(得分:1)
因此,让我们首先考虑如何初始化表格视图。我们使用
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中重新创建水平滚动界面,那么你需要使用一个集合视图,如果你有& #39;是iOS开发的新手,但仍然使用我上面描述的基本概念。这是一个很棒的视频,可以帮助您:https://www.youtube.com/watch?v=Ko9oNhlTwH0