如何实现Swift快速集成下拉刷新和上拉加载更多

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何实现Swift快速集成下拉刷新和上拉加载更多相关的知识,希望对你有一定的参考价值。

ESPullToRefresh是一个非常易于开发者使用的下拉刷新和加载更多组件。通过一个UIScrollView的扩展,可以轻松为UIScrollView的所有子类添加下拉刷新功能。 如果你想定制组件的UI样式,只要实现指定的协议方法即可。

设置默认下拉刷新组件

self.tableView.es_addPullToRefresh
[weak self] in
/// 在这里做刷新相关事件
/// ...
/// 如果你的刷新事件成功,设置completion自动重置footer的状态
self?.tableView.es_stopPullToRefresh(completion: true)    /// 设置ignoreFooter来处理不需要显示footer的情况
self?.tableView.es_stopPullToRefresh(completion: true, ignoreFooter: false)
)

设置默认加载更多组件

self.tableView.es_addInfiniteScrolling
[weak self] in
/// 在这里做加载更多相关事件
/// ...
/// 如果你的加载更多事件成功,调用es_stopLoadingMore()重置footer状态
self?.tableView.es_stopLoadingMore()    /// 通过es_noticeNoMoreData()设置footer暂无数据状态
self?.tableView.es_noticeNoMoreData()
)

使用自定义样式 效果如下:

参考技术A 1、引用iScroll.js, 在初始化时添加两个事件监听:touchMove、DOMContentLoaded。 2、实现iScroll插件的onScrollEnd事件, 也就是在这个事件里调用你自己的ajax方法实现数据的刷新和追加。 3、上拉加载更多请求后台时就相当于分页请求数据,这时候需要在ajax请求时发送pageIndex参数,而初始化加载时需要从后台返回一个pageCount以便前台判断。 4、最关键的就是实现下拉刷新方法(pullDownAction)和上拉加载更多(pullUpAction)方法。

微信小程序下拉刷新和上拉加载的实现

一: 下拉刷新

下拉刷新两个步骤就能实现。

1.在要实现下拉刷新的页面的json配置文件里面加上

"enablePullDownRefresh": true, //开启下拉刷新
"backgroundColor": "#f0145a" //设置背景颜色,如果不设置背景颜色,就看不见下拉刷新的加载动画了,因为加载动画和背景色颜色一样

2.在要实现下拉刷新的页面下拉刷新的函数

onPullDownRefresh() {
wx.showNavigationBarLoading() //在标题栏中显示加载
},

二. 上拉加载更多

    1. // 帖子滚动到底部的加载事件  
    2. lower:function(e){  
    3.   console.log(e)  
    4.   var that = this  
    5.   var url = util.apiUrl + ‘FWinfo/tiezi_list‘  
    6.   util.request(url, ‘get‘, { ‘program_id‘: app.program_id, ‘id‘: that.data.msg_id }, ‘正在加载数据‘, function (res) {  
    7.     for (var i = 0; i < res.data.length; i++) {  
    8.       res.data[i].image = res.data[i].image.split(",")  
    9.     }  
    10.     var msg = that.data.msg.concat(res.data)  
    11.     that.setData({  
    12.       msg: msg,  
    13.       msg_id: res.data[res.data.length - 1].id  
    14.     })  
    15.   })  
    16. },  

以上是关于如何实现Swift快速集成下拉刷新和上拉加载更多的主要内容,如果未能解决你的问题,请参考以下文章

Android实现RecyclerView的下拉刷新和上拉加载更多

使用SwipeRefreshLayout和RecyclerView实现仿“简书”下拉刷新和上拉加载更多

使用SwipeRefreshLayout和RecyclerView实现仿“简书”下拉刷新和上拉加载更多

使用SwipeRefreshLayout和RecyclerView实现仿“简书”下拉刷新和上拉加载更多

H5下拉刷新和上拉加载实现原理浅析

vue2.0 自定义 下拉刷新和上拉加载更多(Scroller) 组件