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.
