XProgressHUD 0.3

XProgressHUD 0.3

测试已测试
语言语言 SwiftSwift
许可证 MIT
发布最后发布2017年11月
SwiftSwift 版本4.0
SPM支持 SPM

ming 维护。



  • 作者
  • ming

XProgressHUD

CI Status
Version
License
Platform

Swift 版本的 MBProgressHUD 是一个 iOS 即插即用类,可以在后台线程工作中显示带有指示器和/或标签的不透明 HUD。


示例

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

要求

XProgressHUD 在 iOS 8+ 和 swift 4.0 上运行。

将 XProgressHUD 添加到您的项目

CocoaPods

CocoaPods 是将 MBProgressHUD 添加到项目的推荐方式。

  1. 在 Podfile 中添加 XProgressHUD 的 pod 条目 pod 'XProgressHUD'
  2. 运行 pod install 来安装 pod。
  3. 使用 import XProgressHUD 在需要的位置包含 XProgressHUD。

源文件

或者,您可以直接将 XProgressHUD.swift 添加到您的项目中。

用法

处理 MBProgressHUD 时,您需要遵循的主要指南是在后台线程中进行长时间运行的任务时,保持主线程无工作,以便及时更新 UI。因此,使用 MBProgressHUD 的推荐方式是在主线程上设置它,然后将您想要执行的任何任务 spins off 到一个新的线程。

ProgressHUD.showHUD(forView: self.view, animated: true)
DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + 10) {
    ProgressHUD.hideHUD(forView: self.view, animated: true)
}

如果您需要配置 HUD,您可以通过使用 XProgressHUD reference 来执行此操作,该 reference 由 showHUDAddedTo:animated: 返回。

let hub = ProgressHUD.showHUD(forView: self.view, animated: true)
hub?.label.text = "加载中"
DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + 10) {
ProgressHUD.hideHUD(forView: self.view, animated: true)
}

您还可以使用一个 NSProgress 对象,当通过该对象报告进度时,MBProgressHUD 会自动更新。

let hub = ProgressHUD.showHUD(forView: self.scrollView, animated: true)
hub?.mode = .determinate
hub?.label.text = "加载中..."
hub?.detailsLabel.text = "(1/2)"
hud?.progressObject = progress;

您应该知道,在上述 block 中发出的任何 HUD 更新不会显示,直到 block 完成。

作者

ming, [email protected]

许可证

XProgressHUD 在 MIT 许可下可用。有关更多信息,请参阅 LICENSE 文件。