Hi i have used my code as follows in swift 2.3 but after update it to 3.0 i can not find any methods and its giving me lots of errors can you give me a sample code ?
func setupAnimator() {
self.animator = ARNTransitionAnimator(operationType: .Present, fromVC: self, toVC: self.musicPlayerVC)
self.animator.usingSpringWithDamping = 0.8
self.animator.gestureTargetView = self.musicPlayerViewSmall
self.animator.interactiveType = .Present
// Present
self.animator.presentationBeforeHandler = { [unowned self] containerView, transitionContext in
print("start presentation")
self.beginAppearanceTransition(false, animated: false)
self.animator.direction = .Top
self.musicPlayerVC.view.frame.origin.y = self.musicPlayerViewSmall.frame.origin.y + self.musicPlayerViewSmall.frame.size.height
self.view.insertSubview(self.musicPlayerVC.view ,atIndex: 1)
self.view.layoutIfNeeded()
self.musicPlayerVC.view.layoutIfNeeded()
// miniPlayerView
let startOriginY = self.musicPlayerViewSmall.frame.origin.y
let endOriginY = -self.musicPlayerViewSmall.frame.size.height
let diff = -endOriginY + startOriginY
// tabBar
self.animator.presentationCancelAnimationHandler = { containerView in
self.musicPlayerViewSmall.frame.origin.y = startOriginY
self.musicPlayerVC.view.frame.origin.y = self.musicPlayerViewSmall.frame.origin.y + self.musicPlayerViewSmall.frame.size.height
self.contrainerView.alpha = 1.0
self.musicPlayerViewSmall.alpha = 1.0
for subview in self.musicPlayerViewSmall.subviews {
subview.alpha = 1.0
}
}
self.animator.presentationAnimationHandler = { [unowned self] containerView, percentComplete in
let _percentComplete = percentComplete >= 0 ? percentComplete : 0
self.musicPlayerViewSmall.frame.origin.y = startOriginY - (diff * _percentComplete)
if self.musicPlayerViewSmall.frame.origin.y < endOriginY {
self.musicPlayerViewSmall.frame.origin.y = endOriginY
}
self.musicPlayerVC.view.frame.origin.y = self.musicPlayerViewSmall.frame.origin.y + self.musicPlayerViewSmall.frame.size.height
let alpha = 1.0 - (1.0 * _percentComplete)
self.contrainerView.alpha = alpha + 0.5
for subview in self.musicPlayerViewSmall.subviews {
subview.alpha = alpha
}
}
self.animator.presentationCompletionHandler = { containerView, completeTransition in
self.endAppearanceTransition()
if completeTransition {
self.musicPlayerViewSmall.alpha = 0.0
self.musicPlayerVC.view.removeFromSuperview()
containerView.addSubview(self.musicPlayerVC.view)
self.animator.interactiveType = .Dismiss
self.animator.gestureTargetView = self.musicPlayerVC.view
self.animator.direction = .Bottom
} else {
self.beginAppearanceTransition(true, animated: false)
self.endAppearanceTransition()
}
}
}
// Dismiss
self.animator.dismissalBeforeHandler = { [unowned self] containerView, transitionContext in
print("start dismissal")
self.beginAppearanceTransition(true, animated: false)
self.view.insertSubview(self.musicPlayerVC.view, atIndex: 1)
self.view.layoutIfNeeded()
self.musicPlayerVC.view.layoutIfNeeded()
// miniPlayerView
let startOriginY = 0 - self.musicPlayerViewSmall.bounds.size.height
let endOriginY = self.contrainerView.bounds.size.height - self.musicPlayerViewSmall.frame.size.height
let diff = -startOriginY + endOriginY
self.contrainerView.alpha = 0.5
self.animator.dismissalCancelAnimationHandler = { containerView in
self.musicPlayerViewSmall.frame.origin.y = startOriginY
self.musicPlayerVC.view.frame.origin.y = self.musicPlayerViewSmall.frame.origin.y + self.musicPlayerViewSmall.frame.size.height
self.contrainerView.alpha = 0.5
self.musicPlayerViewSmall.alpha = 0.0
for subview in self.musicPlayerViewSmall.subviews {
subview.alpha = 0.0
}
}
self.animator.dismissalAnimationHandler = { containerView, percentComplete in
let _percentComplete = percentComplete >= -0.05 ? percentComplete : -0.05
self.musicPlayerViewSmall.frame.origin.y = startOriginY + (diff * _percentComplete)
self.musicPlayerVC.view.frame.origin.y = self.musicPlayerViewSmall.frame.origin.y + self.musicPlayerViewSmall.frame.size.height
let alpha = 1.0 * _percentComplete
self.contrainerView.alpha = alpha + 0.5
self.musicPlayerViewSmall.alpha = 1.0
for subview in self.musicPlayerViewSmall.subviews {
subview.alpha = alpha
}
}
self.animator.dismissalCompletionHandler = { containerView, completeTransition in
self.endAppearanceTransition()
if completeTransition {
self.musicPlayerVC.view.removeFromSuperview()
self.animator.gestureTargetView = self.musicPlayerViewSmall
self.animator.interactiveType = .Present
} else {
self.musicPlayerVC.view.removeFromSuperview()
containerView.addSubview(self.musicPlayerVC.view)
self.beginAppearanceTransition(false, animated: false)
self.endAppearanceTransition()
}
}
}
self.musicPlayerVC.transitioningDelegate = self.animator
}