美文网首页
基于 MJRefresh 第三方的Swift二次封装

基于 MJRefresh 第三方的Swift二次封装

作者: yks慷 | 来源:发表于2018-08-23 17:23 被阅读0次

     不说话,先上demo链接(有用的给个✨),还有一个效果图(腾讯没实名,就算了吧,想看的可以下载 demo 来看)

    在使用 MJRefresh 的时候,大家可能都会发现使用起来比较麻烦,每个页面都需要计算页数,所以就封装了一个来分享一下

    我主要说一下如何使用吧,如果想了解怎么实现的,可以下载 demo 来看

    总的来说,其实就是封装成为一个 manager,需要先定义一下属性

        var orderManager: ScrollViewRefreshManager!

        var orderArr: [Model] {

            iforderManager==nil{

                return[Model]()

            }else{

                return orderManager.sourceArr

            }

        }

    然后初始化

            orderManager = ScrollViewRefreshManager.init(tableView, delegate: self)

            orderManager.beginHeaderRefreshing()

    最后实现协议方法即可使用

    extension ViewController: ScrollViewRefreshManagerDelegate {

        funcscrollViewRefresh(_scrollView:UIScrollView, skip:Int, success:@escaping([Any],Int) ->Void, fail:@escaping() ->Void) {

            //skip 是页码 即请求第几页的数据

            //延时1秒执行

            lettime:TimeInterval=2.0

            DispatchQueue.main.asyncAfter(deadline:DispatchTime.now() + time) {

                //code

                print("1 秒后输出")

                letmodel =Model()

                model.goodsCount=1

                model.orderCode="123123"

                varmodelArr = [Model]()

                modelArr.append(model)

                modelArr.append(model)

                modelArr.append(model)

                modelArr.append(model)

                modelArr.append(model)

                modelArr.append(model)

                modelArr.append(model)

                modelArr.append(model)

                modelArr.append(model)

                ifskip <=2{

                    modelArr.append(model)

                }

                success(modelArr,modelArr.count) //    modelArr是增加的数据,modelArr.count增加数据的条数,用于判断是否需要继续加载,默认为10 少于10条时,上啦不能继续加载

            }

        }

    }

    使用起来比较简单,但是封装的也比较简陋,如果有更好的方法也请分享或者留言一下,谢谢

    相关文章

      网友评论

          本文标题:基于 MJRefresh 第三方的Swift二次封装

          本文链接:https://www.haomeiwen.com/subject/zzjyiftx.html