介绍
我认为最著名的
HUD库是SVProgressHUD,但是这次我检查了Swift制作的
为什么
这是因为,由于在
GitHub上搜索
- PKHUD
- 迅捷通知
- KRProgressHUD
- 甚值
粗略比较
<表格>
tr>
header>
<身体>
tr>
tr>
tr>
tr>
tbody>
table>
关于PKHUD
功能
- 根据Apple的设计制造
- 您可以显式指定要从中显示的视图
- 高度可定制
如何使用
基本操作
提供了
这使得查看加载和状态非常容易。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | // HUDを表示 HUD.show(.progress) HUD.show(.progress, onView: view) // 表示もとのviewを明示的に指定 // HUDを表示して指定時間後に非表示にする HUD.flash(.progress, delay: 3) // HUDを出し終わったあとのタイミングが取れる HUD.flash(.success, onView: view, delay: 2) { _ in // HUDを非表示にしたあとの処理 } // HUDを非表示にする HUD.hide() HUD.hide { _ in // HUDを非表示にしたあとの処理 } |
特定类型
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | public enum HUDContentType { case success case error case progress case image(UIImage?) case rotatingImage(UIImage?) case labeledSuccess(title: String?, subtitle: String?) case labeledError(title: String?, subtitle: String?) case labeledProgress(title: String?, subtitle: String?) case labeledImage(image: UIImage?, title: String?, subtitle: String?) case labeledRotatingImage(image: UIImage?, title: String?, subtitle: String?) case label(String?) case systemActivity } |
示例)
成功
错误
进度
背景
您可以设置是否使背景变暗。
默认情况下,它设置为变暗。
1 2 | HUD.dimsBackground = false HUD.show(.progress, onView: view) |
<表格>
tr>
header>
<身体>
td>
td>tr>
tbody>
table>
关于自定义
在这种情况下,请使用
这可以通过将自定义视图设置为
可以使用已经在PKHUD中定义的视图(
示例)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() PKHUD.sharedHUD.contentView = CustomHUDView(image: PKHUDAssets.checkmarkImage, title: "Success!", subtitle: nil) PKHUD.sharedHUD.show(onView: view) } } class CustomHUDView: PKHUDSquareBaseView { override init(image: UIImage?, title: String?, subtitle: String?) { super.init(image: image, title: title, subtitle: subtitle) titleLabel.textColor = UIColor.lightGray backgroundColor = UIColor(red: 0xAB/0xFF, green: 0xD2/0xFF, blue: 0xFC/0xFF, alpha: 1.0) } required init?(coder aDecoder: NSCoder) { super.init(coder: aDecoder) } } |
注释
我自定义了
根据您要显示的内容,您每次都需要更改
如果您只想更改字体颜色,这会有些麻烦...
概括
关于Swift HUD库
印象是它基本上简单易用。
我已经很久没有使用SVProgressHUD了,但是我想使用Swift制作的PKHUD。