51 lines
1.5 KiB
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()
|
|
}
|
|
}
|