OnOffButton
  • November 10, 2023

Custom On/Off Animated UIButton, written in Swift. By Creativedash


About


This control is inspired on this Creative Dash dribbble: 

Swift Upgrade


Use tags to fit your Swift version:

Swift 3 => 1.4

Swift 2.3 => 1.3

Installation


Carthage

Add the following to your Cartfile:

github “rakaramos/OnOffButton”

Then run carthage update.

Follow the current instructions in Carthage’s README for up to date installation instructions.

CocoaPods

Add the following to your Podfile:

pod ‘OnOffButton’

You will also need to make sure you’re opting into using frameworks:

use_frameworks!

Then run pod install with CocoaPods 0.36 or newer.

Manually

Just copy the OnOffButton.swift into your project.

Implementation


After the installation, you can use it straight in code or with xib/storyboard.

In Code

class ViewController: UIViewController {

let onOffButton = OnOffButton()

override func viewDidLoad() {
super.viewDidLoad()

onOffButton.frame = CGRect(origin: .zero, size:CGSize(width: 100,height: 100))
// Adjust properties
onOffButton.lineWidth = 5
onOffButton.strokeColor = .whiteColor()
onOffButton.ringAlpha = 0.3
onOffButton.addTarget(self, action: #selector(ViewController.didTapOnOffButton), forControlEvents: .TouchUpInside)

view.addSubview(onOffButton)
}

func didTapOnOffButton() {
onOffButton.checked = !onOffButton.checked
}
}

Using @IBDesignables

Set the UIButton class to use OnOffButton:

Configure the properties as you want:

Create an IBAction:

@IBAction func changeButtonState(sender: OnOffButton) {
sender.checked = !sender.checked
}

Profit 😉

GitHub


View Github

#carthage #cocoapods #framework #ios #storyboard #swift #uibutton
YOU MIGHT ALSO LIKE...
ConfettiView

A SwiftUI View that emits confetti with user-defined shapes, images, and text.

SwiftUI Colour Wheel

A colour wheel made all in SwiftUI. There are 2 different colour wheels to choose from. The first main one ...

ColorPickerRing

A color picker implementation with color wheel appearance written in plain SwiftUI. It is compatible with UIColor and NSColor.

ASCollectionView

This repository is no longer maintained. Here's why: with the release of iOS 16 SwiftUI now enables most of the ...