A download button with progress in masked text color.
Clone this repo and drag KCProgressButton.swift
into your project.
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)
- Drag a
UIButton
into your view, and set its class toKCProgressButton
, and set its type toCustom
. - Set other properties like above.
- Enhance efficiency to save memory usage.
GNU General Public License v3.0