[英]UITabBar show black screen when use animated transition. (swift)
我正在制作iOS UITabBar應用程序,我嘗試使用動畫過渡。 但是有些不對勁。 當使用動畫過渡更改視圖時,我的應用程序顯示黑色空白視圖。
我的一些代碼
class TransitionManager
...
func animateTransition(transitionContext: UIViewControllerContextTransitioning) {
let container = transitionContext.containerView()
let fromView = transitionContext.viewForKey(UITransitionContextFromViewKey)!
let toView = transitionContext.viewForKey(UITransitionContextToViewKey)!
let offScreenRight = CGAffineTransformMakeTranslation(container.frame.width, 0)
let offScreenLeft = CGAffineTransformMakeTranslation(-container.frame.width, 0)
toView.transform = offScreenRight
container.addSubview(toView)
container.addSubview(fromView)
let duration = self.transitionDuration(transitionContext)
UIView.animateWithDuration(duration, delay: 0.0, usingSpringWithDamping: 0.5, initialSpringVelocity: 0.8, options: nil, animations: {
fromView.transform = offScreenLeft
toView.transform = CGAffineTransformIdentity
}, completion: { finished in
transitionContext.completeTransition(true)
})
}
...
的UITabBarController
func tabBarController(tabBarController: UITabBarController, animationControllerForTransitionFromViewController fromVC: UIViewController, toViewController toVC: UIViewController) -> UIViewControllerAnimatedTransitioning? {
var animatedTransitioningObject = TransitionManager()
return animatedTransitioningObject
}
轉換完成后,我將嘗試添加此代碼
}, completion: { finished in
transitionContext.completeTransition(true)
// add this line
UIApplication.sharedApplication().keyWindow!.addSubview(toView)
})
現在我的第二個視圖顯示正確,但我的tabbar消失了! 我正在嘗試調試視圖層次結構。 看來我的標簽欄並沒有消失。 但它帶來了第二種觀點。
如何解決這個問題?
PS。 對不起,我的英語不好。
如果僅在動畫期間發生,請嘗試禁用UITabBar半透明效果。 在將設備更新到9.0后,我發現自定義動畫的行為類似,最終成為我的根本問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.