我使用以下代码将一个视图添加为子视图:
但是这并不会导致平滑的转换。我该如何使用平滑的转换方式删除已添加的子视图,类似于它展示的方式?
我使用以下代码将一个视图添加为子视图:
let controller = SideMenuViewController.instantiateViewControllerFromStoryboard(storyBoardName: "Module1") as! SideMenuViewController
UIView.animate(withDuration:0.5, delay: 0.0, options: UIViewAnimationOptions.curveEaseInOut, animations: {
}, completion: {
(finished: Bool) -> Void in
controller.view.tag = 100
let transition = CATransition()
transition.type = kCATransitionPush
transition.subtype = kCATransitionFromLeft
controller.view.layer.add(transition, forKey: nil)
self.view.addSubview(controller.view)
self.addChildViewController(controller)
controller.didMove(toParentViewController: self)
})
结果是一个视图控制器(侧边栏)从左侧滑出并显示。
我想使用从右到左的过渡效果删除添加的子视图。
我尝试使用以下代码从父视图中带动画地移除视图:
UIView.animate(withDuration:0.5, delay: 0.0, options: UIViewAnimationOptions.curveEaseIn, animations: {}, completion: {
self.view.viewWithTag(100)?.removeFromSuperview()
})
但是这并不会导致平滑的转换。我该如何使用平滑的转换方式删除已添加的子视图,类似于它展示的方式?