Skip to content

Instantly share code, notes, and snippets.

@aaronabentheuer
Created September 15, 2014 12:00
Show Gist options
  • Save aaronabentheuer/d6b167ca796a6a938f98 to your computer and use it in GitHub Desktop.
Save aaronabentheuer/d6b167ca796a6a938f98 to your computer and use it in GitHub Desktop.
Screens are Rounded Rectangles.
// AppDelegate.swift
import UIKit
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
var activeCornerRadius : Int = 6
var incativeCornerRadius : Int = 0
func application(application: UIApplication!, didFinishLaunchingWithOptions launchOptions: NSDictionary!) -> Bool {
window!.clipsToBounds = true
var animation : CABasicAnimation = CABasicAnimation(keyPath: "cornerRadius")
animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseOut)
animation.fromValue = activeCornerRadius
animation.toValue = 6
animation.duration = 0.15
window!.layer.cornerRadius = 6
window!.layer.addAnimation(animation, forKey: "cornerRadius")
return true
}
func applicationWillResignActive(application: UIApplication!) {
var animation : CABasicAnimation = CABasicAnimation(keyPath: "cornerRadius")
animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseOut)
animation.fromValue = 6
animation.toValue = 0
animation.duration = 0.15
window!.layer.cornerRadius = 0
window!.layer.addAnimation(animation, forKey: "cornerRadius")
}
func applicationDidBecomeActive(application: UIApplication!) {
var animation : CABasicAnimation = CABasicAnimation(keyPath: "cornerRadius")
animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseOut)
animation.fromValue = 0
animation.toValue = 6
animation.duration = 0.15
window!.layer.cornerRadius = 6
window!.layer.addAnimation(animation, forKey: "cornerRadius")
}
}
@zacwolff
Copy link

zacwolff commented May 7, 2016

Flawless!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment