ProductPromotion
Logo

Swift

made by https://0x3d.site

GitHub - pmusolino/PMSuperButton: ๐Ÿ”ฅ PMSuperButton is a powerful UIButton coming from the countryside, but with super powers! ๐Ÿ˜Ž
๐Ÿ”ฅ PMSuperButton is a powerful UIButton coming from the countryside, but with super powers! ๐Ÿ˜Ž - pmusolino/PMSuperButton
Visit Site

GitHub - pmusolino/PMSuperButton: ๐Ÿ”ฅ PMSuperButton is a powerful UIButton coming from the countryside, but with super powers! ๐Ÿ˜Ž

GitHub - pmusolino/PMSuperButton: ๐Ÿ”ฅ PMSuperButton is a powerful UIButton coming from the countryside, but with super powers! ๐Ÿ˜Ž

Language GitHub license Pod version Carthage Compatible

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

Contributing

  • If you need help or you'd like to ask a general question, open an issue.
  • If you found a bug, open an issue.
  • If you have a feature request, open an issue.
  • If you want to contribute, submit a pull request.

Acknowledgements

Made with โค๏ธ by Paolo Musolino.

Follow me on:

๐Ÿ’ผ Linkedin

๐Ÿค– Twitter

๐ŸŒ‡ Instagram

๐Ÿ‘จ๐Ÿผโ€๐ŸŽค Facebook

MIT License

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

Made with โค๏ธ by Paolo Musolino.

More Resources
to explore the angular.

mail [email protected] to add your project or resources here ๐Ÿ”ฅ.

Related Articles
to learn about angular.

FAQ's
to learn more about Angular JS.

mail [email protected] to add more queries here ๐Ÿ”.

More Sites
to check out once you're finished browsing here.

0x3d
https://www.0x3d.site/
0x3d is designed for aggregating information.
NodeJS
https://nodejs.0x3d.site/
NodeJS Online Directory
Cross Platform
https://cross-platform.0x3d.site/
Cross Platform Online Directory
Open Source
https://open-source.0x3d.site/
Open Source Online Directory
Analytics
https://analytics.0x3d.site/
Analytics Online Directory
JavaScript
https://javascript.0x3d.site/
JavaScript Online Directory
GoLang
https://golang.0x3d.site/
GoLang Online Directory
Python
https://python.0x3d.site/
Python Online Directory
Swift
https://swift.0x3d.site/
Swift Online Directory
Rust
https://rust.0x3d.site/
Rust Online Directory
Scala
https://scala.0x3d.site/
Scala Online Directory
Ruby
https://ruby.0x3d.site/
Ruby Online Directory
Clojure
https://clojure.0x3d.site/
Clojure Online Directory
Elixir
https://elixir.0x3d.site/
Elixir Online Directory
Elm
https://elm.0x3d.site/
Elm Online Directory
Lua
https://lua.0x3d.site/
Lua Online Directory
C Programming
https://c-programming.0x3d.site/
C Programming Online Directory
C++ Programming
https://cpp-programming.0x3d.site/
C++ Programming Online Directory
R Programming
https://r-programming.0x3d.site/
R Programming Online Directory
Perl
https://perl.0x3d.site/
Perl Online Directory
Java
https://java.0x3d.site/
Java Online Directory
Kotlin
https://kotlin.0x3d.site/
Kotlin Online Directory
PHP
https://php.0x3d.site/
PHP Online Directory
React JS
https://react.0x3d.site/
React JS Online Directory
Angular
https://angular.0x3d.site/
Angular JS Online Directory