Sto provando a eseguire un'animazione di transizione personalizzata. Ho creare un oggetto di animazione che si conforma a UIViewControllerAnimatedTransitioning
:Nil quando unwrapping viewForKey (UITransitionContextFromViewKey) (Swift)
import UIKit
class ViewControllerAnimator: NSObject, UIViewControllerAnimatedTransitioning {
let duration = 1.0
func transitionDuration(transitionContext: UIViewControllerContextTransitioning?) -> NSTimeInterval {
return duration
}
func animateTransition(transitionContext: UIViewControllerContextTransitioning) {
let fromView = transitionContext.viewForKey(UITransitionContextFromViewKey)!
//Animate out
UIView.animateWithDuration(duration, animations: {() -> Void in
fromView.frame.origin.x -= 200
}) { (Bool) -> Void in
transitionContext.completeTransition(true)
}
}
}
sto ottenendo un errore quando si cerca di impostare la cornice di fromView
. Si schianta sul tentativo di forzare il nulla. Cosa sto facendo di sbagliato qui? Perché il mio fromView nil?
errore va qui lasciare fromView = transitionContext.viewForKey (UITransitionContextFromViewKey)! – iMuzahid
@ Md.MuzahidulIslam sì. Sai perché ha un errore qui? – Kex
Perché stai tentando di scartare forzatamente il valore nullo. Scrivi questa riga in questo modo, se lasciato daView = transitionContext.viewForKey (UITransitionContextFromViewKey) { } else { // handle nil value } – iMuzahid