JGProgressHUD 2.2

JGProgressHUD 2.2

测试已测试
语言语言 Obj-CObjective C
许可 MIT
发布上次发布2020年10月

Jonas Gessner维护。



JGProgressHUD

一个为 iOS 和 tvOS 定制的优雅且简单的进度 HUD。 支持 Swift 和 Objective-C!

概览

最终的性能 HUD for iOS 和 tvOS:JGProgressHUD!

  • 直接使用:简单集成,易于使用,只需寥寥几行代码。
  • 轻松自定义(自定义动画、指示视图等等)。
  • 使用 UIVisualEffectViewUIMotionEffect 来实现原生外观。
  • 使用 AutoLayout 提供完全动态的布局。
  • 检测并重新定位键盘出现/消失时的状态。
  • 支持暗黑模式 — 自动改变外观。
  • 文档齐全且维护良好。
  • 支持 Voice Over/UIAccessibility
  • 向后兼容 iOS 8。
  • 支持 Swift 和 Objective-C。
  • 最重要的是,它看起来很好!

下载源代码并打开 实例 项目来测试 JGProgressHUD 并查看其所有功能的操作。

JGProgressHUD 也可以与 SwiftUI 一起使用。查看 JGProgressHUD-SwiftUI

GitHub license CocoaPods Carthage compatible Carthage compatible

实例

           

显示不确定进度

Objective-C

JGProgressHUD *HUD = [[JGProgressHUD alloc] init];
HUD.textLabel.text = @"Loading";
[HUD showInView:self.view];
[HUD dismissAfterDelay:3.0];

Swift

let hud = JGProgressHUD()
hud.textLabel.text = "Loading"
hud.show(in: self.view)
hud.dismiss(afterDelay: 3.0)

这会显示一个带有活动指示器和标题“加载”的深色HUD。HUD会以淡入动画呈现,并在3秒后以淡出动画消失。

显示错误信息

JGProgressHUD *HUD = [[JGProgressHUD alloc] init];
HUD.textLabel.text = @"Error";
HUD.indicatorView = [[JGProgressHUDErrorIndicatorView alloc] init]; //JGProgressHUDSuccessIndicatorView is also available
[HUD showInView:self.view];
[HUD dismissAfterDelay:3.0];

显示确定进度

JGProgressHUD *HUD = [[JGProgressHUD alloc] init];
HUD.indicatorView = [[JGProgressHUDPieIndicatorView alloc] init]; //Or JGProgressHUDRingIndicatorView
HUD.progress = 0.5f;
[HUD showInView:self.view];
[HUD dismissAfterDelay:3.0];

有关更多示例,包括Swift示例,请参阅示例

重要:您应始终在UIViewController视图中显示JGProgressHUD

自定义

样式

JGProgressHUD 可以以3种风格显示

  • 超浅色
  • 浅色
  • 深色

样式也可以根据当前的UITraitCollection(深色模式)自动设置。使用初始化器[[JGProgressHUD alloc] init]/JGProgressHUD()来利用自动样式。

指示视图

默认情况下,HUD将显示一个不确定的进度指示器。可以通过将indicatorView属性设置为nil来完全隐藏指示器视图。以下指示器视图默认可用:

  • 不确定的进度指示器
  • 饼图进度指示器
  • 环形进度指示器
  • 成功指示器
  • 错误指示器
  • 图像指示器

可以通过继承JGProgressHUDIndicatorView来创建自定义指示器视图。

动画

默认情况下,HUD将使用淡入淡出动画。可以修改一些参数,如动画持续时间或动画曲线。可以选择不使用动画显示HUD,并使用不同的动画。以下动画默认可用:

  • 淡入淡出
  • 缩放和淡入淡出

可以通过继承JGProgressHUDAnimation来创建自定义动画。

要降低HUD背后内容的亮度,请将您的暗色设置为JGProgressHUD实例的backgroundColor

安装

Swift包管理器

在Xcode中,使用菜单文件 > Swift包 > 添加包依赖...并输入包URL https://github.com/JonasGessner/JGProgressHUD.git

这是安装JGProgressHUD的推荐方式。

Carthage

在您的Cartfile中添加:

github "JonasGessner/JGProgressHUD"

CocoaPods

在您的Podfile中添加:

pod 'JGProgressHUD'

手动安装

  1. JGProgressHUD.xcodeproj 文件拖拽到你的 Xcode 工程中。
  2. 在 "General" 选项卡的 "Embedded Binaries" 中添加 JGProgressHUD.framework

安装后,将模块导入到希望使用的位置。

@import JGProgressHUD;

Swift

import JGProgressHUD

查看 示例 项目以了解 JGProgressHUD 作为框架的实现示例。

要求

  • 基础 SDK 为 iOS/tvOS/macCatalyst 13.0 或更高版本。
  • 部署目标为 iOS 8.0, tvOS 9.0, macCatalyst 13.0 或更高版本。

JGProgressHUD 也可以用于 Swift 编写的项目。有关详情,请参阅 安装

文档

详细文档可以在 此处 找到。

每个类和方法都经过了良好的文档说明,便于快速了解概览。要开始,请查看 JGProgressHUD.h

许可证

MIT 许可证。
© 2014-2020, Jonas Gessner。

致谢

由 Jonas Gessner 创建和维护,© 2014-2020。