- December 17, 2024
- Mins Read
Ring progress view similar to Activity app on Apple Watch
To install MKRingProgressView
via CocoaPods, add the following line to your Podfile:
pod ‘MKRingProgressView’
To install MKRingProgressView
via Carthage, add the following line to your Cartfile:
github “maxkonovalov/MKRingProgressView”
Note: Instructions below are for using SwiftPM without the Xcode UI. It’s the easiest to go to your Project Settings -> Swift Packages and add MKRingProgressView from there.
To integrate using Apple’s Swift package manager, without Xcode integration, add the following as a dependency to your Package.swift
:
.package(url: “https://github.com/maxkonovalov/MKRingProgressView.git”, .upToNextMajor(from: “2.3.0”))
See the example Xcode project. It contains 2 targets:
MKRingProgressView
can be set up in Interface Builder. To use it, set the custom view class to MKRingProgressView
. Most of the control’s parameters can be customized in 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)
The progress
value can be animated the same way you would normally animate any property using UIView
‘s block-based animations:
UIView.animate(withDuration: 0.5) {
ringProgressView.progress = 1.0
}
To achieve better performance the following options are possible:
gradientImageScale
to lower values like 0.5
(defaults to 1.0
)startColor
and endColor
to the same valueshadowOpacity
to 0.0
allowsAntialiasing
to false
A vertical stackview which takes subviews with different widths and adds them to it's rows with paddings, spacings etc.
AudioManager is a Swift package that provides a modular and easy-to-use interface for implementing audio feedback in your applications. It ...