Я увидел учебник по Appcoda TransitionViewControllers
transition
меню от донизу, и я его реализовал. Затем я попытался сделать transition
снизу вверх, используя UIViewControllerContextTransitioning
. Но, делая это неправильно, я устанавливал неправильные ценности, которые я думаю. Ниже приведен кодCustom ViewController Transition
func animateTransition(transitionContext: UIViewControllerContextTransitioning) {
//Get reference to our fromView, toView and the container view
let fromView = transitionContext.viewForKey(UITransitionContextFromViewKey)
let toView = transitionContext.viewForKey(UITransitionContextToViewKey)
//Setup the transform for sliding
let container = transitionContext.containerView()
let height = container?.frame.height
let moveDown = CGAffineTransformMakeTranslation(0, height! - 150)
let moveUp = CGAffineTransformMakeTranslation(0, -50)
//Add both views to the container view
if isPresenting {
toView?.transform = moveUp
snapShot = fromView?.snapshotViewAfterScreenUpdates(true)
container?.addSubview(toView!)
container?.addSubview(snapShot!)
}
//Perform the animation
UIView.animateWithDuration(duration, delay: 0.0, usingSpringWithDamping: 0.9, initialSpringVelocity: 0.3, options: UIViewAnimationOptions(rawValue: 0), animations: {
if self.isPresenting {
self.snapShot?.transform = moveDown
toView?.transform = CGAffineTransformIdentity
} else {
self.snapShot?.transform = CGAffineTransformIdentity
fromView?.transform = moveUp
}
}, completion: {finished in
transitionContext.completeTransition(true)
if !self.isPresenting {
self.snapShot?.removeFromSuperview()
}
})
}
Это то, что я получаю http://www.imageno.com/m7fqtttwn8c7pic.html того же опыта, что и у меня. Предполагается, что представление должно нажать First View UP, вместо этого оно работает под ним –
oh, оба они делают это. Они точно не толкают ничего вверх или вниз. Это просто делает вид, который вы на слайде немного вниз или вверх. Если вы понимаете, о чем я? Я могу исправить файл для вас, чтобы меню появилось внизу. вам просто нужно сыграть с MenuTableViewController в раскадровке и заставить их появиться внизу. Вы можете сделать это, добавив представление и сделав начало списка внизу или что-то в этом роде. –
Хорошо. Благодарю. Это сделало бы –