易用刷新器 1.3.1

EasyRefresher 1.3.1

Pircate 维护。



  • 作者
  • Pircate

EasyRefresher

CI Status Version License Platform

示例

要运行示例项目,请克隆仓库,然后首先从示例目录运行 pod install

要求

  • iOS 10.0
  • Swift 5.0

安装

易用刷新器可通过 CocoaPods 获取。要安装它,只需将以下行添加到您的 Podfile 中

pod 'EasyRefresher'

预览

使用方法

  • 添加刷新器
tableView.refresh.header.addRefreshClosure {
    self.reqeust {
        self.tableView.refresh.header.endRefreshing()
    }
}

tableView.refresh.footer = AutoRefreshFooter(triggerMode: .percent(0.5)) {
    self.reqeust {
        self.tableView.refresh.footer.endRefreshing()
    }
}

tableView.refresh.header = RefreshHeader(delegate: self)
  • 手动触发
tableView.refresh.header.beginRefreshing()
  • 状态标题
tableView.refresh.header.setTitle("loading...", for: .refreshing)

tableView.refresh.footer.setAttributedTitle(
    NSAttributedString(string: "已到最后一页", attributes: [.foregroundColor: UIColor.red]), for: .disabled
)
  • 最后更新时间
tableView.refresh.header.lastUpdatedTimeText = { date in
    guard let date = date else { return "暂无更新记录" }
    
    return "上次刷新时间:\(date)"
}
  • UIActivityIndicatorView 风格
tableView.refresh.header.activityIndicatorStyle = .white
  • 不可用
// End refreshing and set state to disabled
tableView.refresh.footer.isEnabled = false
  • 移除
tableView.refresh.footer.removeFromScrollView()
  • 影响反馈
tableView.refresh.header.impactFeedbackMode = .on(style: .medium)
  • 自定义状态视图
extension CustomStateView: RefreshStateful {
    
    public func refresher(_ refresher: Refresher, didChangeState state: RefreshState) {
    
    }
    
    public func refresher(_ refresher: Refresher, didChangeOffset offset: CGFloat) {
    
    }
}

tableView.refresh.footer = AppearanceRefreshFooter(stateView: CustomStateView()) {
    self.reqeust {
        self.tableView.refresh.footer.endRefreshing()
    }
}

作者

Pircate, [email protected]

许可协议

EasyRefresher 可在 MIT 许可协议下使用。更多信息请参阅 LICENSE 文件。