GBKUIButtonProgressView
  • November 9, 2023

Inspired by Apple’s download progress buttons in the app store

Created by @pklada and @miketsprague

Checkout the blog post.

Installation


CocoaPods

pod 'GBKUIButtonProgressView', git: 'https://github.com/Guidebook/gbkui-button-progress-view'

Manually add to your project

Just add the files in GBKUIButtonProgressView/ to your project

Usage


self.downloadButton.initialTitle = @”Download”;
self.downloadButton.completeTitle = @”Open”;

// Add a target (like a regular button)
[self.downloadButton addTarget:self action:@selector(downloadButtonPressed:) forControlEvents:UIControlEventTouchUpInside];

-(void)downloadButtonPressed:(id)sender {
// Update the button’s state based on your downloading item’s state
if(!self.isDownloading && !self.isDownloaded) {
[self.downloadButton startProgressing];
[self downloadItem];
} else if(self.isDownloaded) {
[self openItem];
} else {
[self cancelDownloadingItem];
[self.downloadButton setProgress:0 animated:YES withCompletion:^{
[self.downloadButton reset];
}];
}
}

-(void)downloadProgressed:(CGFloat)progress {
// Update the download button’s progress when you get a progress update from your item
[self.downloadButton setProgress:progress animated:YES];
}

To change the tint color, simply:

self.downloadButton.tintColor = [UIColor redColor];

See the example for more info.

GitHub


View Github

#ios #placeholder #swift #uibutton #uiprogressview
YOU MIGHT ALSO LIKE...
CameraBackground

Features Both front and back camera supported. Flash modes: auto, on, off. Countdown timer. Tap to focus. Pinch to zoom. Usage  

DKCamera

Description A light weight & simple & easy camera for iOS by Swift. It uses CoreMotion framework to detect device orientation, so ...

HorizonSDK-iOS

Horizon SDK is a state of the art real-time video recording / photo shooting iOS library. Some of the features ...

LLSimpleCamera

LLSimpleCamera: A simple customizable camera - video recorder control LLSimpleCamera is a library for creating a customized camera - video ...

RSBarcodes_Swift

RSBarcodes allows you to read 1D and 2D barcodes using the metadata scanning capabilities introduced with iOS 7 and generate ...