SwiftProgressHUD 0.0.7

SwiftProgressHUD 0.0.7

测试已测
语言语言 SwiftSwift
许可证 MIT
发布最新发布2018年9月
SPM支持 SPM

houmanager 维护。



  • 作者
  • houmanager

SwiftProgressHUD

Travis Platform Platform CocoaPods Carthage Compatible GitHub tag GitHub stars license

SwiftProgressHUD 是一个 iOS 悬浮窗类,用于在后台线程中执行工作期间显示透明的悬浮窗(HUD),其中包括指示器和/或标签。此 HUD 旨在作为未文档化、私有的 UIKit UIProgressHUD 的替代品,并具有一些附加功能。

效果

1 2 3 4
1 2 3 4

要求

SwiftProgressHUD 在 iOS 8+ 上工作,并需要 ARC 来构建。它依赖于以下 Apple 框架,这些框架应已包含大多数学术代码模板中:

  • Swift 3.0+
  • Foundation.framework
  • UIKit.framework
  • CoreGraphics.framework

为了构建 SwiftProgressHUD,您需要最新的开发工具。旧的 Xcode 版本可能会工作,但不会明确维护兼容性。

将 SwiftProgressHUD 添加到你的项目

CocoaPods

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

  1. 在你的 Podfile 中添加 SwiftProgressHUD 的 pod 条目。
pod 'SwiftProgressHUD'
  1. 运行以下命令来安装 pod(s)
pod install
  1. 使用以下方式将 SwiftProgressHUD 包含在你的项目中,你需要的地方
import SwiftProgressHUD

Carthage

  1. 将 SwiftProgressHUD 添加到你的 Cartfile。
github "stackhou/SwiftProgressHUD"
  1. 运行
carthage update
  1. 按照 标准 Carthage 安装说明 的其余部分,将 SwiftProgressHUD 添加到你的项目。

使用示例

在需要等待时,可以使用 showWait,代码及效果如下

/// 设置蒙版背景颜色, 默认是clear
//            SwiftProgressHUD.hudBackgroundColor = UIColor.black.withAlphaComponent(0.2)

/// 开始loading...
SwiftProgressHUD.showWait()

/// 模拟 1s后 加载完成
DispatchQueue.main.asyncAfter(deadline: .now() + 1) {
SwiftProgressHUD.hideAllHUD()
}

加载成功时,提示可以使用 showSuccess,代码及效果如下

SwiftProgressHUD.showSuccess("加载成功")

/// 模拟 1s后 加载完成
DispatchQueue.main.asyncAfter(deadline: .now() + 1) {
SwiftProgressHUD.hideAllHUD()
}

加载失败时,提示可以使用 showFail,代码及效果如下

SwiftProgressHUD.showFail("加载失败")

/// 模拟 1s后 加载完成
DispatchQueue.main.asyncAfter(deadline: .now() + 1) {
SwiftProgressHUD.hideAllHUD()
}

友情提示信息,可以使用 showInfo,代码及效果如下

SwiftProgressHUD.showInfo("请稍后")

/// 模拟 1s后 加载完成
DispatchQueue.main.asyncAfter(deadline: .now() + 1) {
SwiftProgressHUD.hideAllHUD()
}

错误Toast提示信息,可以使用 showOnlyText,代码及效果如下

SwiftProgressHUD.showOnlyText("请输入合法的手机号")

/// 模拟 1s后 加载完成
DispatchQueue.main.asyncAfter(deadline: .now() + 1) {
SwiftProgressHUD.hideAllHUD()
}

状态栏提示信息,可以使用 showOnStatusBar,代码及效果如下

SwiftProgressHUD.showOnStatusBar("你有一条新消息", autoClear: true, autoClearTime: 1, textColor: UIColor.orange, backgroundColor: UIColor.lightGray)

/// 模拟 1s后 加载完成
DispatchQueue.main.asyncAfter(deadline: .now() + 1) {
SwiftProgressHUD.hideAllHUD()
}

加载动画提示,可以使用 showAnimationImages,代码及效果如下

let animationDuration = 70 // 动画时间 单位毫秒Int

var loadingImages = [UIImage]()
for index in 0...16 {
let loadImageName = String(format: "new_brand_progress%02d", index)
if let loadImage = UIImage(named: loadImageName) {
loadingImages.append(loadImage)
}
}

SwiftProgressHUD.showAnimationImages(loadingImages, timeMilliseconds: animationDuration, backgroundColor: backgroundColor, scale: scale)

/// 模拟 1s后 加载完成
DispatchQueue.main.asyncAfter(deadline: .now() + 4) {
SwiftProgressHUD.hideAllHUD()
}
1 2 3

许可协议

此代码根据 MIT 许可协议 的条款和条件分发。

变更日志

每一项 MBProgressHUD 发布的简要总结可以查看变更日志