PMSuperButton
  • November 11, 2023

PMSuperButton is a powerful UIButton coming from the countryside, but with super powers! šŸ˜Ž

An easy way to create custom and complex buttons with custom attributes, directly added to the iOS Interface Builder, very easy to integrate into every project!

Top 100 Coolest Super Powers:


  • Ā Edit everything directly from storyboard or code šŸ˜
  • Ā Change border color, width
  • Ā Customize the corner radius
  • Ā Set a gradient background
  • Ā Edit everything about the shadows: color, opacity, offset
  • Ā Animations when the button is highlighted šŸ¤—
  • Ā Animations when the button is selected
  • Ā Ripple tap effect, where you can edit ripple color and ripple speed (like a Google Material button) 😮
  • Ā Toggle functionality
  • Ā Image View content mode and alpha
  • Ā Touch up inside closure 🤠
  • Ā Loader šŸ¤œšŸ¤›
  • Ā Swift 3, 4 and Swift 5 support
  • Ā and much more

How it works


The library allows you to use all the features of standard UIButton with a lot of new cool features, customizable from Storyboard or from code.

First of all, drag & drop a new UIButton inside your view controller in storyboard, then set the UIButton class to PMSuperButton:

That’s it! Now you are ready to customize your PMSuperButton from theĀ Attributes InspectorĀ of Interface Builder.

How to use Touch Up Inside closure

IBAction or addTarget() with #selector? No thanks, we have a closure for this:

myButton.touchUpInside {
print(“This button was pressed!”)
}

How to show the loader indicator

 

//Pass `false` to disable user interaction while loading is showed
myButton.showLoader(userInteraction: true)

//Hide loader
myButton.hideLoader()

Requirements


  • iOS 8.0+
  • Xcode 10+

CocoaPods


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

$ gem install cocoapods

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

source ‘https://github.com/CocoaPods/Specs.git’
platform :ios, ‘8.0’
use_frameworks!

pod ‘PMSuperButton’

Then, run the following command:

$ pod install

Carthage


CarthageĀ is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks.

You can install Carthage withĀ HomebrewĀ using the following command:

$ brew update
$ brew install carthage

To integrate PMSuperButton into your Xcode project using Carthage, specify it in yourĀ Cartfile:

github “pmusolino/PMSuperButton”

RunĀ carthage updateĀ to build the framework and drag the builtĀ PMSuperButton.frameworkĀ into your Xcode project.

Manually


  1. Download and dropĀ /SourcesĀ folder in your project.
  2. Congratulations!

Swift compatibility


GitHub


View Github

#animation #button #closure #customizable #interfacebuilder #storyboard #uibutton #uicontrol
YOU MIGHT ALSO LIKE...
SwiftUICam

If you want to have a custom camera using SwiftUI and not using the UIPickerController that will display the original ...

CameraView for SwiftUI šŸ“·

CameraView allows you to have a SnapChat-style screen on your SwiftUI app that gives a realtime view of the iPhone ...

Camera-SwiftUI

SwiftUI has proven to be a really awesome new framework to build and design apps in a quick and reliable ...

ECWeekView

See theĀ swiftuiĀ branch for updates. An iOS calendar library for displaying calendar events in a week view.