推荐一款优雅的进度指示器:IHProgressHUD
项目介绍
IHProgressHUD
是一个简洁易用的进度显示控件,专为iOS和tvOS设计。它基于SVProgressHUD,并借助Swiftify进行了Swift重构,增加了线程安全性和在App扩展中的兼容性。
如果你对转换过程感兴趣,可以阅读这篇文章获取更多细节。
该项目提供了一个直观的示例动图,展示了其精美的动画效果:
你可以在线预览Appetize.io上的实际运行效果。
安装
安装 IHProgressHUD
有以下两种方法:
使用CocoaPods
-
在你的Podfile中添加:
pod 'IHProgressHUD'
或者如果你想使用最新特性:
pod 'IHProgressHUD', :git => 'https://github.com/Swiftify-Corp/IHProgressHUD.git'
-
执行
pod install
安装到你的项目中。
使用Swift包管理器(SwiftPM)
-
从Xcode菜单选择
File
>Swift Packages
>Add Package Dependency...
。 -
输入仓库地址:
https://github.com/Swiftify-Corp/IHProgressHUD.git
并确认。 -
指定版本后,点击完成,Xcode会自动将依赖加入到你的项目。
使用
IHProgressHUD
设计为单例模式,可在后台线程直接调用其方法。例如,使用GCD进行异步任务处理:
IHProgressHUD.show()
DispatchQueue.global(qos: .default).async(execute: {
// 时间消耗型任务
IHProgressHUD.dismiss()
})
应用场景
IHProgressHUD
的主要用途是在执行耗时操作时提示用户,如文件下载、网络请求等。但不建议用于非阻塞用户体验的操作,如下拉刷新、无限滚动或发送消息。
自定义设置
可以通过以下方法调整 IHProgressHUD
的样式、颜色、尺寸等:
- 显示风格
- 遮罩类型
- 动画类型
- 容器视图
- 最小大小
- 圆环厚度
- 圆环半径
- 边角半径
- 边框颜色
- 边框宽度
- 字体
- 文本颜色
- 背景颜色
- 图像大小
- 是否对图像进行着色
- 确认、成功或错误图标
- 延迟关闭时间
- 动画持续时间
- 支持的最大窗口级别
- 触摸反馈启用状态
开源贡献与许可证
欢迎通过创建问题或提交Pull Request参与到 IHProgressHUD
的开发中。查看贡献指南了解详情。
该项目遵循 MIT 许可证,并且感谢Freepik提供的信息、成功和错误图标,这些图标根据 Creative Commons BY 3.0 协议授权使用。
尝试一下 IHProgressHUD
,让它为你的应用带来更专业的用户体验吧!
- CangjieCommunity为仓颉编程语言开发者打造活跃、开放、高质量的社区环境Markdown00
- redis-sdk仓颉语言实现的Redis客户端SDK。已适配仓颉0.53.4 Beta版本。接口设计兼容jedis接口语义,支持RESP2和RESP3协议,支持发布订阅模式,支持哨兵模式和集群模式。Cangjie032
- 每日精选项目🔥🔥 推荐每日行业内最新、增长最快的项目,快速了解行业最新热门项目动态~ 🔥🔥02
- qwerty-learner为键盘工作者设计的单词记忆与英语肌肉记忆锻炼软件 / Words learning and English muscle memory training software designed for keyboard workersTSX022
- Yi-CoderYi Coder 编程模型,小而强大的编程助手HTML07
- advanced-javaAdvanced-Java是一个Java进阶教程,适合用于学习Java高级特性和编程技巧。特点:内容深入、实例丰富、适合进阶学习。JavaScript085
- taro开放式跨端跨框架解决方案,支持使用 React/Vue/Nerv 等框架来开发微信/京东/百度/支付宝/字节跳动/ QQ 小程序/H5/React Native 等应用。 https://taro.zone/TypeScript09
- CommunityCangjie-TPC(Third Party Components)仓颉编程语言三方库社区资源汇总05
- Bbrew🍺 The missing package manager for macOS (or Linux)Ruby01
- byzer-langByzer(以前的 MLSQL):一种用于数据管道、分析和人工智能的低代码开源编程语言。Scala04