Swift快速集成下拉刷新和上拉加載更多示例代碼
ESPullToRefresh
ESPullToRefresh是一個(gè)非常易于開發(fā)者使用的下拉刷新和加載更多組件。通過一個(gè)UIScrollView的擴(kuò)展,可以輕松為UIScrollView的所有子類添加下拉刷新功能。 如果你想定制組件的UI樣式,只要實(shí)現(xiàn)指定的協(xié)議方法即可。Github地址
如何安裝
使用CocoaPods
pod "ESPullToRefresh"
手動(dòng)安裝
git clone https://github.com/eggswift/pull-to-refresh.git open ESPullToRefresh
開始使用
使用默認(rèn)樣式 效果如下:
設(shè)置默認(rèn)下拉刷新組件
self.tableView.es_addPullToRefresh { [weak self] in /// 在這里做刷新相關(guān)事件 /// ... /// 如果你的刷新事件成功,設(shè)置completion自動(dòng)重置footer的狀態(tài) self?.tableView.es_stopPullToRefresh(completion: true) /// 設(shè)置ignoreFooter來(lái)處理不需要顯示footer的情況 self?.tableView.es_stopPullToRefresh(completion: true, ignoreFooter: false) }) }
設(shè)置默認(rèn)加載更多組件
self.tableView.es_addInfiniteScrolling { [weak self] in /// 在這里做加載更多相關(guān)事件 /// ... /// 如果你的加載更多事件成功,調(diào)用es_stopLoadingMore()重置footer狀態(tài) self?.tableView.es_stopLoadingMore() /// 通過es_noticeNoMoreData()設(shè)置footer暫無(wú)數(shù)據(jù)狀態(tài) self?.tableView.es_noticeNoMoreData() }) }
使用自定義樣式 效果如下:
注: 加載動(dòng)畫資源來(lái)自美團(tuán) iOS app。
ESPullToRefresh通過ESRefreshProtocol和ESRefreshAnimatorProtocol來(lái)約束刷新組件的使用,自定義的組件必須遵守這兩個(gè)協(xié)議,并實(shí)現(xiàn)協(xié)議中的方法。
設(shè)置自定義下拉刷新組件
func es_addPullToRefresh(animator animator: protocol<ESRefreshProtocol, ESRefreshAnimatorProtocol>, handler: ESRefreshHandler)
設(shè)置自定義加載更多組件
func es_addInfiniteScrolling(animator animator: protocol<ESRefreshProtocol, ESRefreshAnimatorProtocol>, handler: ESRefreshHandler)
移除方法
func es_removeRefreshHeader() func es_removeRefreshFooter()
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Swift 中如何使用 Option Pattern 改善可選項(xiàng)的 API 設(shè)計(jì)
這篇文章主要介紹了Swift 中如何使用 Option Pattern 改善可選項(xiàng)的 API 設(shè)計(jì),幫助大家更好的進(jìn)行ios開發(fā),感興趣的朋友可以了解下2020-10-10Swift算法實(shí)現(xiàn)字符串轉(zhuǎn)數(shù)字的方法示例
最近學(xué)完了swift想著實(shí)踐下,就通過一些簡(jiǎn)單的算法進(jìn)行學(xué)習(xí)研究,下面這篇文章主要介紹了Swift算法實(shí)現(xiàn)字符串轉(zhuǎn)數(shù)字的方法,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2017-03-03Swift中static和class關(guān)鍵字的深入講解
這篇文章主要給大家介紹了關(guān)于Swift中static和class關(guān)鍵字的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者使用Java具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03Swift開發(fā)應(yīng)用中如何更方便地使用顏色詳解
這篇文章主要給大家介紹了關(guān)于Swift開發(fā)應(yīng)用中如何更方便地使用顏色的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2018-03-03使用Swift實(shí)現(xiàn)iOScollectionView廣告無(wú)限滾動(dòng)效果(DEMO)
本文給大家分享使用Swift實(shí)現(xiàn)iOScollectionView廣告無(wú)限滾動(dòng)效果(DEMO),非常不錯(cuò),具有一定的參考借鑒價(jià)值,感興趣的朋友一起看看吧2016-11-11