GBK Progress Button for iOS

GBKProgressButton

Example

To run the example project, clone the repo, and run pod install from the Example directory first.

Requirements

Installation

GBKProgressButton is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod 'GBKProgressButton', :git => 'git@gitlab.gbksoft.net:gbksoft-mobile-department/ios/gbkprogressbutton.git', :tag => '0.1.6'

Usage

XIB

  • Add new UIView
  • In Identity Inspector set GBKProgressButton as a Custom Class
  • Customize parameters In Attributes Inspector
  • To handle button touch add @IBAction, with TouchUpInside value
  • Call animate() method from previously added @IBAction

API

Start Animation

Stop Animation

Customizations

WHOLE PUBLIC API

     @IBInspectable public var lineWidth: CGFloat

    @IBInspectable public var primaryColor: UIColor

    @IBInspectable public var progressBackgroundColor: UIColor

    @IBInspectable public var downloadProgressColor: UIColor

    @IBInspectable public lazy var animationDuration: Double { get set }

    @IBInspectable public var titleText: String { get set }

    @IBInspectable public var titleColor: UIColor { get set }

    @IBInspectable public var titleImage: UIImage? { get set }

    @IBInspectable public lazy var buttonCorners: CGFloat { get set }

    @IBInspectable public var gradientTopColor: UIColor?

    @IBInspectable public var gradientBottomColor: UIColor?

    @IBInspectable public var gradientOpacity: CGFloat

    @IBInspectable public var gradientStartPoint: CGPoint

    @IBInspectable public var gradientEndPoint: CGPoint

    public lazy var font: UIFont { get set }

    public var attributedText: NSAttributedString? { get set }

    public private(set) lazy var imageView: UIImageView { get set }

    public private(set) lazy var titleLabel: UILabel { get set }

    public var currentProgress: CGFloat { get }

    /// To reset button in UITableViewCell/UICollectionViewCell
    public func prepareForReuse()

    public func reset()

    public func animate(to newValue: CGFloat = 0.0, animated: Bool = true, downloaded: (() -> Void)? = nil)

Author

Roman Mizin, mizin.re@gbksoft.com

License

GBKProgressButton is available under the MIT license. See the LICENSE file for more info.

GitHub

View Github