Progressive download button inspired by Appstore download button for iOS 13.0+
MUDownloadButton is a Progressive Download button written in pure swift and inspired by AppStore download button . feel free to contribute and pull requests
Requirements
- iOS 13.0+
- Swift 5.0+
Usage
Code
To use MUDownloadButton create an instance and add it to your own view as a subview:
let downloadButton = MUDownloadButton()
downloadButton.frame = CGRect(origin: origin, size: size)
view.addSubview(downloadButton)
The button can have 4 different states:
idle– before downloading statewaiting– between start request and actual startdownloading– when download is starteddownloaded– when download finished
The state of the button can be changed through its state property.
Delegate
You can use the MUDownloadButtonDelegate to monitor taps on button and state changes .
The progress of download can be changed through itss progress property.
Customisation
- Customizable properties are :
mainTintColor– main color of buttondownloadedButtonImage– downloaded button image – system images preferredidleButtonImage– idle button image – system images preferred
Demo
To run the example project, clone the repo, and run the Demo directory
Installation
Currently only supports SPM and iOS 13+
Swift Package Manager
The Swift Package Manager is a tool for automating the distribution of Swift code and is integrated into the swift compiler.
Once you have your Swift package set up, adding AHDownloadButton as a dependency is as easy as adding it to the dependencies value of your Package.swift.
dependencies: [
.package(url: https://github.com/mahadshahib/MUDownloadButton.git, .upToNextMajor(from: "0.9.9"))
]
Author
License
MUDownloadButton is licensed under the MIT license. Check the LICENSE file for details.