美文网首页刷新
iOS 自定义刷新/加载控件

iOS 自定义刷新/加载控件

作者: 燃烧的大叔 | 来源:发表于2016-01-12 23:39 被阅读582次

一直以来都是用的第三方的刷新和加载,或者直接用系统的下拉刷新外带底部加载按钮。没有自己定义刷新和加载。不管是为了现在这个工程会改变刷新和加载时的样式,还是在以后别的工程出现的新的样式。考虑到应该去写一些自己可以用的东西。第三方类库可以省去很多事情,但是有时候我们没了自己的一些思想,所以我们需要去思考,去观察,去学习,去借鉴。

了解UIScrollView的contentOffset、contentInset

了解UIScrollView的tracking、dragging、decelerating

主要是判断ScrollView的contentOffset,根据contentOffset来设定scrollView的contentInset

判断scrollView.contentOffset.y的值进行frame的处理。根据dragging、decelerating的状态进行UI的展示和调整,同时在不同状态下可以delegate或者block传递scrollView做相应的事件。

主要状态:1、准备刷新-scrollView.decelerating为NO和scrollView.dragging为YES,scrollView.contentOffset.y的值处于小于(下拉)/大于(上拉)设定的Inset值

2、开始刷新-scrollView.decelerating为NO和scrollView.dragging为YES,scrollView.contentOffset.y处于小于(上拉)/大于(下拉)设定的Inset的值

3、进入刷新--scrollView.decelerating为YES和scrollView.dragging为NO,scrollView.contentOffset.y处于小于(上拉)/大于(下拉)设定的Inset的值

在这三种状态中我们可以进行RefreshView的展示并处理UI或者进行Animation

下面贴出主要代码

附图 附图2

其实这个很简单,就是自己写的自己可以随时更改,自己可以控制,并且可以吧HeaderView和FooterView自定义

相关文章

网友评论

  • 747071ac3c1d:如果可以的话, 提供一个demo链接地址吧

本文标题:iOS 自定义刷新/加载控件

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