Latest 1.0.0
License MIT
Platforms ios 8.0, requires ARC

TVButton - Apple TV Parallax icons on iOS

Build Status Version
Carthage compatible

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

Star Wars TVButton


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

TVButton in action


Setting up with CocoaPods

source ''
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"

Latest podspec

    "name": "TVButton",
    "version": "1.0.0",
    "summary": "Apple TV style parallax icons as iOS UIButtons",
    "description": "Recreating the cool parallax icons from Apple TV as iOS UIButtons (in Swift).",
    "homepage": "",
    "license": "MIT",
    "authors": {
        "Roy Marmelstein": "[email protected]"
    "source": {
        "git": "",
        "tag": "1.0.0"
    "social_media_url": "",
    "platforms": {
        "ios": "8.0"
    "requires_arc": true,
    "source_files": "TVButton",
    "resources": "TVButton/Specular.png",
    "pushed_with_swift_version": "3.0"

Pin It on Pinterest

Share This