SwiftUI package that creates an animated circular progress bar
Installation: It requires at least iOS 15, iPadOS 15, macOS 12 and Xcode 13!
In Xcode go to File -> Add Packages... and paste in the repo’s url: https://github.com/ArnavMotwani/CircularProgressSwiftUI.git then either select a version or the main branch
I will update the main branch more frequently with minor changes, while the version will only increase with significant changes.
There also a branch called iOS13 which supports iOS 13+ and macOS 10_15+
Usage:
Import the package into the file with import CircularProgress
Example:
Here is how the default view, with no customizations, can be implemented
import SwiftUI
import CircularProgress
struct ContentView: View {
@State var count = 0
let total = 10
var progress: CGFloat{
return CGFloat(count)/CGFloat(total)
}
var body: some View {
VStack {
CircularProgressView(count: count, total: total, progress: progress)
.padding(50)
HStack{
Button("Decrease", action: {self.count -= 1})
Spacer()
Button("Increase", action: {self.count += 1})
}
.padding(50)
}
}
}
Fill Customization:
The Progress Bar can be filled with a Linear or an Angular Gradient. By default the fill is LinearGradient(gradient: Gradient(colors: [Color.green, Color.blue]), startPoint: .top, endPoint: .bottom) however you can pass a custom Linear or Angular Gradient to the fill Parameter.
CircularProgress
SwiftUI package that creates an animated circular progress bar
Installation: It requires at least iOS 15, iPadOS 15, macOS 12 and Xcode 13!
In Xcode go to
File -> Add Packages...
and paste in the repo’s url:https://github.com/ArnavMotwani/CircularProgressSwiftUI.git
then either select a version or the main branchI will update the main branch more frequently with minor changes, while the version will only increase with significant changes.
There also a branch called iOS13 which supports iOS 13+ and macOS 10_15+
Usage:
Import the package into the file with
import CircularProgress
Example:
Here is how the default view, with no customizations, can be implemented
Fill Customization:
The Progress Bar can be filled with a Linear or an Angular Gradient. By default the fill is
LinearGradient(gradient: Gradient(colors: [Color.green, Color.blue]), startPoint: .top, endPoint: .bottom)
however you can pass a custom Linear or Angular Gradient to the fill Parameter.Parameters:
Examples
fontOne
fontTwo
colorOne
colorTwo
fill
lineWidth
lineCap
showText
showBottomText