Skip to content

Instantly share code, notes, and snippets.

@traviskirton
Created June 30, 2015 13:52
Show Gist options
  • Select an option

  • Save traviskirton/3d8b43e80b64e194fc86 to your computer and use it in GitHub Desktop.

Select an option

Save traviskirton/3d8b43e80b64e194fc86 to your computer and use it in GitHub Desktop.
Flip view, container v. noContainer
//
// ViewController.swift
// C4Swift
//
// Created by travis on 2014-10-28.
// Copyright (c) 2014 C4. All rights reserved.
//
import UIKit
import C4UI
import C4Core
import C4Animation
class ViewController: C4CanvasController {
var b = true
override func setup() {
//noContainer()
container()
}
func noContainer() {
let v1 = C4View(frame: C4Rect(0,0,100,100))
v1.backgroundColor = blue
let v2 = C4View(frame:v1.frame)
v2.backgroundColor = red
v2.hidden = true
canvas.add(v1)
canvas.add(v2)
canvas.addTapGestureRecognizer { (location, state) -> () in
var from = v1
var to = v2
var options = UIViewAnimationOptions.BeginFromCurrentState
if self.b {
options |= UIViewAnimationOptions.TransitionFlipFromLeft
}
else {
from = v2
to = v1
options |= UIViewAnimationOptions.TransitionFlipFromRight
}
from.hidden = true
to.hidden = false
UIView.transitionFromView(from.view, toView: to.view, duration: 0.25, options: UIViewAnimationOptions.TransitionFlipFromRight, completion: nil)
self.b = !self.b
}
}
func container() {
let c = C4View(frame: C4Rect(0,0,100,100))
let v1 = C4View(frame: c.frame)
v1.backgroundColor = blue
let v2 = C4View(frame:c.frame)
v2.backgroundColor = red
v2.hidden = true
c.add(v1)
c.add(v2)
canvas.add(c)
canvas.addTapGestureRecognizer { (location, state) -> () in
var from = v1
var to = v2
var options = UIViewAnimationOptions.BeginFromCurrentState
if self.b {
options |= UIViewAnimationOptions.TransitionFlipFromLeft
}
else {
from = v2
to = v1
options |= UIViewAnimationOptions.TransitionFlipFromRight
}
from.hidden = true
to.hidden = false
UIView.transitionFromView(from.view, toView: to.view, duration: 0.25, options: UIViewAnimationOptions.TransitionFlipFromRight, completion: nil)
self.b = !self.b
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment