天天看点

SwiftProgressHUD 的使用方法

Github、cocoachina、cocoa4app等寻找了很多swift版本的HUD,都不太满意。综合对比,并没有找到好用合适的HUD开源库。于是乎

SwiftProgressHUD

是目前比较好用美观、多功能的HUD。用法如下:

要求

  • swift 3.0+
  • iOS 8.0+
  • ARC

添加

SwiftProgressHUD

到你的工程

一、CocoaPods

1.将

SwiftProgressHUD

添加到你的

Podfile

2.安装或者更新

pod install 
// 或者
  pod update
           

3.在你需要使用

SwiftProgressHUD

的地方

import

import SwiftProgressHUD
           

二、Carthage

1.将

SwiftProgressHUD

添加到你的

Cartfile

2.编译安装

3.配置

点击工程 -> Target -> Linked Frameworks and Libaries ->
 点击+号 ->Add Other... -> 找到Framework选中点击open -> 
 build phases -> New Run Script Phase -> 将 /usr/local/bin/carthage copy-frameworks 拷贝到Script ->
 Input Files —> $(SRCROOT)/Carthage/Build/iOS/[你的框架名称]
           

使用举例

在需要等待的时候, 可以使用

showWait

, 代码及效果如下:

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

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

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

加载成功时, 提示可以使用

showSuccess

, 代码及效果如下:

SwiftProgressHUD.showSuccess("加载成功")

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

加载失败时, 提示可以使用

showFail

, 代码及效果如下:

SwiftProgressHUD.showFail("加载失败")

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

友情提示信息, 可以使用

showInfo

, 代码及效果如下:

SwiftProgressHUD.showInfo("请稍后")

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

错误Toast提示信息, 可以使用

showOnlyText

, 代码及效果如下:

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

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

状态栏提示信息, 可以使用

showOnStatusBar

, 代码及效果如下:

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

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

加载动画提示, 可以使用

showAnimationImages

, 代码及效果如下:

let animationDuration =  // 动画时间 单位毫秒Int
var loadingImages = [UIImage]()
for index in . {
    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() + ) {SwiftProgressHUD.hideAllHUD()}
           

详细的用法请参考 SwiftProgressHUDDemo