https://github.com/krayc425/kcprogressbutton
A download button with progress in masked text color.
https://github.com/krayc425/kcprogressbutton
ios-app ios-ui swift uibutton uibutton-subclass
Last synced: about 1 year ago
JSON representation
A download button with progress in masked text color.
- Host: GitHub
- URL: https://github.com/krayc425/kcprogressbutton
- Owner: krayc425
- License: gpl-3.0
- Created: 2017-09-09T09:46:26.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2017-09-09T10:24:40.000Z (almost 9 years ago)
- Last Synced: 2025-02-13T11:50:15.070Z (over 1 year ago)
- Topics: ios-app, ios-ui, swift, uibutton, uibutton-subclass
- Language: Swift
- Homepage:
- Size: 435 KB
- Stars: 5
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# KCProgressButton
A download button with progress in masked text color.
# Preview

# Usage
Clone this repo and drag `KCProgressButton.swift` into your project.
## Code
__The type of this button MUST BE Custom.__
```
/// Initialize a button and set other properties
let kcButton = KCProgressButton(type: .custom)
kcButton.frame = CGRect(x: 30, y: 30, width: 100, height: 30)
kcButton.backgroundColor = .red
/// Set the initial title
kcButton.setTitle("Download", for: .normal)
/// Set the value formatter
kcButton.valueFormatter = {
return String(format: "Downloaded %d%%", Int($0 * 100))
}
/// Set the title when download is finished
kcButton.finishDownloadTitle = "Done"
/// Set the border width
kcButton.borderWidth = 3.0
self.view.addSubview(kcButton)
```
## StoryBoard / xib
1. Drag a `UIButton` into your view, and set its class to `KCProgressButton`, and set its type to `Custom`.
2. Set other properties like above.
# TODO
* Enhance efficiency to save memory usage.
# License
__GNU General Public License v3.0__