TVButton
  • November 9, 2023

Recreating the cool parallax icons from Apple TV as iOS UIButtons (in Swift). The effect is triggered by long pressing or dragging.

Usage


Import TVButton at the top of your Swift ViewController.

import TVButton

Create and position your TVButton in interface builder or in code.

For the parallax TVButton you will need at least two layers of images (three recommended). For best results, the button and the images should all have the same dimensions. Assign the relevant UIImages to TVButtonLayers and provide them as a layers array to the TVButton.

let background = TVButtonLayer(image: UIImage(named: “TVButtonBackground.png”)!)
let pattern = TVButtonLayer(image: UIImage(named: “TVButtonPattern.png”)!)
let top = TVButtonLayer(image: UIImage(named: “TVButtonTop.png”)!)
tvButton.layers = [background, pattern, top]

You can customize the parallax intensity of your TVButton. Default value is 1.0 and it’s very subtle. Maximum recommended value is 2.0.

tvButton.parallaxIntensity = 1.3

Enjoy!

Setting up with CocoaPods

source ‘https://github.com/CocoaPods/Specs.git’
pod ‘TVButton’, ‘~> 1.0’

Setting up with Carthage

Carthage is a decentralized dependency manager that automates the process of adding frameworks to your Cocoa application.

You can install Carthage with Homebrew using the following command:

$ brew update
$ brew install carthage

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

github “marmelroy/TVButton”

GitHub


View Github

#carthage #cocoapods #framework #ios #swift #uibutton
YOU MIGHT ALSO LIKE...
🧭 NavigationKit

NavigationKit is a lightweight library which makes SwiftUI navigation super easy to use. 💻 Installation 📦 Swift Package Manager Using Swift Package Manager, add ...

swiftui-navigation-stack

An alternative SwiftUI NavigationView implementing classic stack-based navigation giving also some more control on animations and programmatic navigation. NavigationStack Installation ...

Stinsen

Simple, powerful and elegant implementation of the Coordinator pattern in SwiftUI. Stinsen is written using 100% SwiftUI which makes it ...

SwiftUI Router

With SwiftUI Router you can power your SwiftUI app with path-based routing. By utilizing a path-based system, navigation in your app becomes ...

FlowStacks

This package takes SwiftUI's familiar and powerful NavigationStack API and gives it superpowers, allowing you to use the same API not just ...