• Stars
    star
    118
  • Rank 299,923 (Top 6 %)
  • Language
    Swift
  • License
    MIT License
  • Created almost 7 years ago
  • Updated over 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

UIButton sublcass with loading animation

Icon

Language license CocoaPods GitHub stars CocoaPods

EMSpinnerButton is an elegant button with a spinner animation and is fully customizable.
Inspired by the Starbucks app

Icon

Table of Contents

Features

  • Title
  • Gradient Background (Optional)
  • Various animations
  • Fully Customizable
  • CocoaPods

Requirements

  • iOS 9.0+
  • Xcode 9+

Installation

CocoaPods is a dependency manager for Cocoa projects. You can install it with the following command:

$ gem install cocoapods

To integrate EMSpinnerButton into your Xcode project using CocoaPods, specify it in your Podfile:

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '9.0'
use_frameworks!

target '<Your Target Name>' do
pod 'EMSpinnerButton'
end

Then, run the following command:

$ pod install

Usage

In the storyboard add a UIButton and change its class to EMSpinnerButton

Animations

Collapse

// Collapse animation
button.animate(animation: .collapse)

Expand

// Expand animation
button.animate(animation: .expand)

Shake

// Shake animation
button.animate(animation: .shake)

Customization

Button Title

button.title = "LOGIN"
// Default title = nil

Corner Radius

button.cornerRadius = button.frame.height/2
// Default corner radius = 0

Title Color

button.titleColor = UIColor.red
// Default color = UIColor.white

Background Color

button.backgroundColor = UIColor.white
// Default color = UIColor(red: 49/255, green: 177/255, blue: 229/255, alpha: 1.0)

Background Gradient Color

button.gradientColor = UIColor.white
// Default colors = nil

Spinner Color

button.spinnerColor = UIColor.lightGray.cgColor
// Default color = UIColor.white.cgColor

License


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