ActivityIndicatorManager
AIM 为在 UIView/UIWindow 中启动/停止 Activity Indicator 提供了便利方法。
目录
功能
- 可配置性 - 使用您期望的加载行为和布局进行设置。
- 窗口加载器 - 使用一行代码在整窗口中启动和停止加载指示器。
- 多阻塞器 - 窗口加载器支持具有观察者数量(加载器不会消失,直到所有观察者都已取消订阅)的多阻塞器行为。
- 最小加载时间 - 窗口加载器支持最小加载时间行为,并具有最小的
TimeInterval
(加载器不会消失,直到最小时间间隔已过去)。 - 视图加载器 - 轻松在
UIView
内部启动和停止加载指示器。
需求
- iOS 11.0+
- Swift 5
安装
CocoaPods
您可以使用CocoaPods通过将其添加到您的Podfile
中来安装ActivityIndicatorManager
。
platform :ios, '11.0'
use_frameworks!
pod 'ActivityIndicatorManager'
为了获得完整功能,请在源文件开始处导入ActivityIndicatorManager
。
import ActivityIndicatorManager
手动
- 下载并将
ActivityIndicatorManager
文件夹拖放到您的项目。 - 恭喜!
使用示例
使用原生活动指示器设置
let nativeActivityIndicatorSetup = AIMNativeTypeModel(style: <#T##UIActivityIndicatorView.Style#>,
color: <#T##UIColor?#>,
backgroundColor: <#T##UIColor?#>)
AIMActivityIndicatorManager.setup(withWindow: <#T##UIWindow?#>,
indicatorType: .native(model: nativeActivityIndicatorSetup),
minimumLoadingTimeType: <#T##AIMMinimumLoadingTimeType#>)
使用自定义活动指示器进行设置
为了使用自定义活动指示器进行设置,需要提供包含所有逻辑的自定义视图。注意,您的自定义视图应遵循AIMActivityIndicatorProtocol
。
class CustomActivityIndicatorView: UIView, AIMActivityIndicatorProtocol {
// MARK: - ActivityIndicatorProtocol
func startAnimating() {
// start custom animation
}
func stopAnimating() {
// stop custom animation
}
}
AIMActivityIndicatorManager.setup(withWindow: <#T##UIWindow?#>,
indicatorType: .custom(customView: CustomActivityIndicatorView()),
minimumLoadingTimeType: <#T##AIMMinimumLoadingTimeType#>)
窗口加载器
要在窗口中开始活动指示器,请使用
AIMActivityIndicatorManager.sharedInstance.shouldShowIndicator()
要停止它,请使用
AIMActivityIndicatorManager.sharedInstance.shouldHideIndicator()
如果您希望无条件地停止窗口中的活动指示器,可以使用
AIMActivityIndicatorManager.sharedInstance.forceHideIndicator()
视图加载器
要在view: UIView
中开始活动指示器,请使用
AIMActivityIndicatorManager.sharedInstance.startActivityIndicator(in: view)
要停止它,请使用
AIMActivityIndicatorManager.sharedInstance.stopActivityIndicator(in: view)
元信息
Dimitar Petrov – [email protected]
在MIT许可下分发。有关更多信息,请参阅LICENSE
。