用于创建自定义 UIRefreshControl 的基础库。
您可以制作原创的刷新动画。
要使用,继承 BaseRefreshControl 并编写一些代码。
示例
import UIKit
import BaseRefreshControl
class MyRefreshControl: BaseRefreshControl {
let lbl = UILabel(frame: .zero)
// initialize, add any control
override func setup() {
lbl.frame = bounds
lbl.textAlignment = .Center
addSubview(lbl)
}
override func layout() {
lbl.frame = bounds
}
// in dragging
override func progressRefresh(progress: CGFloat) {
lbl.text = "progress \(Int(progress * 100))%"
}
// start refreshing
override func willStartRefresh() {
lbl.text = "refreshing"
}
// end refreshing
override func willEndRefresh() {
lbl.text = "done"
}
}
请参阅 sample/
继承功能
public func setup()
public func layout()
public func progressRefresh(progress: CGFloat)
public func willStartRefresh()
public func willEndRefresh()
使用类似于这样的几乎相同的 UIRefreshControl
let refresh = MyRefreshControl()
refresh.addTarget(self, action: #selector(doRefresh(_:)), forControlEvents: .ValueChanged)
table.addSubview(refresh)
使用函数
func endRefreshing()
func beginRefreshing()
var refreshing: Bool { get }
提示,便利初始化器
table.addSubview(MyRefreshControl(target: self, action: #selector(doRefresh(_:))))