GBA002/Delta/Game Selection/Segues/GamesPresentationController.swift

51 lines
1.5 KiB
Swift

//
// GamesPresentationController.swift
// Delta
//
// Created by Riley Testut on 8/7/16.
// Copyright © 2016 Riley Testut. All rights reserved.
//
import UIKit
class GamesPresentationController: UIPresentationController
{
private let blurView: UIVisualEffectView
private let animator: UIViewPropertyAnimator
init(presentedViewController: UIViewController, presenting presentingViewController: UIViewController?, animator: UIViewPropertyAnimator)
{
self.animator = animator
self.blurView = UIVisualEffectView(effect: nil)
self.blurView.autoresizingMask = [.flexibleWidth, .flexibleHeight]
super.init(presentedViewController: presentedViewController, presenting: presentingViewController)
}
override func presentationTransitionWillBegin()
{
guard let containerView = self.containerView else { return }
self.blurView.frame = CGRect(x: 0, y: 0, width: containerView.bounds.width, height: containerView.bounds.height)
containerView.addSubview(self.blurView)
self.animator.addAnimations {
self.blurView.effect = UIBlurEffect(style: .dark)
}
}
override func dismissalTransitionWillBegin()
{
self.animator.addAnimations {
self.blurView.effect = nil
}
}
override func dismissalTransitionDidEnd(_ completed: Bool)
{
self.blurView.removeFromSuperview()
}
}