自定义MJRefresh

下拉刷新当前最流行的框架是MJRefresh,该框架也做了开源,里面也有自定义demo。我们可以通过继承实现一样的效果。

自定义MJRefresh:“什么值得买”的下拉刷新实现 - 简书 这篇文章可以看下,写的666。我也主要是根据大神思路膜拜一波。

先看下MJRefresh的结构图,

如果改动的不大,可以根据最后面的调整位置,实现继承。如果刷新布局改动较大,可以继承MJRefreshHeader 与MJRefreshFooter ,实现五个方法即可。

一、prepare。在这里做一些初始化配置(比如添加子控件) 这个方法里实现添加子控件的方法即可,设置frame在第二步。

二、placeSubviews。在这里设置子控件的位置和尺寸,之所以在这里进行布局,是因为父类的这个方法 在layoutsubviews里实现。所以布局的代码在这里进行。所以在外面自定义的view 在这里是无法引用的。需要将添加子视图与布局代码隔离开来。

三、监听scrollView的contentOffset,contentSize,拖拽状态等改变

四、setState 。监听控件的刷新状态

五、setPullingPercent。监听拖拽比例(控件被拖出来的比例)

效果和上述文章效果是一样的。里面解释很详细。

关于怎么获取素材,手里连接itunes,

把应用拖到桌面,改后缀为zip,就能获取你需要的素材。

示例demo地址:自定义MJRefresh 

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容