https://github.com/kentya6/KYCircularProgress
Flexible progress bar written in Swift.
https://github.com/kentya6/KYCircularProgress
Last synced: 3 months ago
JSON representation
Flexible progress bar written in Swift.
- Host: GitHub
- URL: https://github.com/kentya6/KYCircularProgress
- Owner: kentya6
- License: mit
- Created: 2014-10-06T13:42:12.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2020-08-19T06:47:30.000Z (over 4 years ago)
- Last Synced: 2024-10-29T17:43:00.222Z (4 months ago)
- Language: Swift
- Size: 8.43 MB
- Stars: 1,148
- Watchers: 33
- Forks: 115
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-loading-indicators - KYCircularProgress - Flexible progress bar written in Swift. (Swift)
- awesome - KYCircularProgress - Flexible progress bar written in Swift. (OOM-Leaks-Crash / WebView-ProgressBar)
README
KYCircularProgress
==================[](https://img.shields.io/cocoapods/v/KYCircularProgress.svg)
[](https://github.com/Carthage/Carthage)
[](http://mit-license.org)
[](https://developer.apple.com/iphone/index.action)
[](https://developer.apple.com/swift)
[](http://isitmaintained.com/project/kentya6/KYCircularProgress "Percentage of issues still open")
[](http://isitmaintained.com/project/kentya6/KYCircularProgress "Average time to resolve an issue")Flexible progress bar written in Swift.
## Features
- [x] Gradation Color
- [x] Progress Closure
- [x] UIBezierPath Progress Bar
- [x] Progress Gauge Guide
- [x] Customizable on Storyboard
- [x] Progress Change Animation## Demo
![]()
## Requirement
- Swift4.2## Usage
#### Create KYCircularProgress
```swift
// create KYCircularProgress
let circularProgress = KYCircularProgress(frame: view.bounds)// create KYCircularProgress with gauge guide
let circularProgress = KYCircularProgress(frame: view.bounds, showGuide: true)
```#### Gradation Color
```swift
// support Hex color to RGBA color
circularProgress.colors = [UIColor(rgba: 0xA6E39D11), UIColor(rgba: 0xAEC1E355), UIColor(rgba: 0xAEC1E3AA), UIColor(rgba: 0xF3C0ABFF)]// combine Hex color and UIColor
circularProgress.colors = [.purple, UIColor(rgba: 0xFFF77A55), .orange]
```#### Progress Closure
```swift
circularProgress.progressChanged {
(progress: Double, circularProgress: KYCircularProgress) in
print("progress: \(progress)")
}
```#### UIBezierPath Progress Bar
```swift
// create "Star progress bar"
let path = UIBezierPath()
path.move(to: CGPoint(x: 50.0, y: 2.0))
path.addLine(to: CGPoint(x: 84.0, y: 86.0))
path.addLine(to: CGPoint(x: 6.0, y: 33.0))
path.addLine(to: CGPoint(x: 96.0, y: 33.0))
path.addLine(to: CGPoint(x: 17.0, y: 86.0))
path.close()
starProgress.path = path
```## Installation
#### CocoaPods
[CocoaPods](https://cocoapods.org) is a dependency manager for Cocoa projects.To integrate KYCircularProgress into your Xcode project using CocoaPods, specify it in your `podfile`:
```
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
use_frameworks!pod 'KYCircularProgress'
```Then, run the following command:
```
$ pod install
```#### Carthage (iOS 8+)
[Carthage](https://github.com/Carthage/Carthage) is a decentralized dependency manager that automates the process of adding frameworks to your Cocoa application.You can install Carthage with [Homebrew](http://brew.sh/) using the following command:
```bash
$ brew update
$ brew install carthage
```To integrate KYCircularProgress into your Xcode project using Carthage, specify it in your `Cartfile`:
```ogdl
github "kentya6/KYCircularProgress" >= 1.2.1
```#### Manually
Add `KYCircularProgress.swift` into your Xcode project.## Licence
The MIT License (MIT)
Copyright (c) 2014-2018 Kengo YOKOYAMA
## Author
[kentya6](https://github.com/kentya6)