MKRingProgressView

Language Platform License Version Carthage compatible SPM compatible

类似于 Apple Watch 上 Activity 应用的环形进度视图

MKRingProgressView

特性

安装

CocoaPods

要通过 CocoaPods 安装 MKRingProgressView,请将以下行添加到您的 Podfile 中

pod 'MKRingProgressView'

Carthage

要通过 Carthage 安装 MKRingProgressView,请将以下行添加到您的 Cartfile 中

github "maxkonovalov/MKRingProgressView"

Swift Package Manager

注意:以下说明适用于在没有 Xcode UI 的情况下使用 SwiftPM。 最简单的方法是转到您的项目设置 -> Swift Packages 并从那里添加 MKRingProgressView。

要使用 Apple 的 Swift 包管理器集成,而无需 Xcode 集成,请将以下内容作为依赖项添加到您的 Package.swift

.package(url: "https://github.com/maxkonovalov/MKRingProgressView.git", .upToNextMajor(from: "2.3.0"))

用法

请参阅示例 Xcode 项目。 它包含 2 个目标

Interface Builder

MKRingProgressView 可以在 Interface Builder 中进行设置。 要使用它,请将自定义视图类设置为 MKRingProgressView。 大多数控件的参数都可以在 Interface Builder 中进行自定义。

代码

let ringProgressView = RingProgressView(frame: CGRect(x: 0, y: 100, width: 100, height: 100))
ringProgressView.startColor = .red
ringProgressView.endColor = .magenta
ringProgressView.ringWidth = 25
ringProgressView.progress = 0.0
view.addSubview(ringProgressView)

可以使用 UIView 的基于块的动画以与通常动画任何属性相同的方式来动画 progress

UIView.animate(withDuration: 0.5) {
    ringProgressView.progress = 1.0
}

性能

为了获得更好的性能,可以采用以下选项

要求

许可

MKRingProgressView 在 MIT 许可证下可用。 有关更多信息,请参见 LICENSE 文件。