2016-11-20 41 views
0

我有一個分頁滾動。我想一次只加載75頁,當用戶到達最後一頁時,按鈕會顯示最後一次滑動。該按鈕必須點擊以加載更多。如何將一個按鈕添加到UIScrollView的最後加載更多?

像你在附圖中看到的一樣,像ios Zillow應用程序。

我該如何添加此按鈕?它是滾動的一部分,還是它只是一個滾動的按鈕?

enter image description here

回答

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中重新創建水平滾動界面,那麼你需要使用一個集合視圖,這有點複雜你是iOS開發的新手,但仍然使用上面描述的基本概念。這裏有一個很棒的視頻來幫助你:https://www.youtube.com/watch?v=Ko9oNhlTwH0

1

我會建議你去UICollectionView,而不是UIScrollViewUIScrollView你會爲你的UIImageView和廣告在你的UIScrollView作爲比較UICollectionView這將需要更多的內存中創建多個對象,與UICollectionView您可以重複使用同一個單元,因此與UIScrollView相比,UICollectionView消耗的內存將會非常少。

改編職系在末處加入按鈕,在你UICollectionView創建兩個自定義小區中的一個是顯示的UIImageView和一個是顯示加載更多按鈕,取75個結果的時間和在數據源numberOfItemsInSectionreturn 75 + 1(即你的數組數+ 1 [+1顯示負載更多的按鈕,當你想要顯示它])

現在cellForItemAtIndexPath比較,如果該indexpath.row計數比你更大的陣列計數然後裝入電池的負載更多按鈕。

相關問題