【发布时间】:2019-01-04 15:37:49
【问题描述】:
是否可以向 UIView 显示/添加视图控制器?如果是的话,有人可以在我尝试时提供帮助,但我无法弄清楚。下面是我正在使用的当前代码。提前致谢
if let keyWindow = UIApplication.shared.keyWindow {
//container view
let containerFrame = CGRect(x: 0, y: keyWindow.frame.height, width: keyWindow.frame.width, height: 5)
likesContainerView = UIView(frame: containerFrame)
likesContainerView?.backgroundColor = UIColor.red
keyWindow.addSubview(likesContainerView!)
//likes view controller
let vc = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "likesVC") as! likeViewController
vc.view.frame = (likesContainerView?.frame)!
self.addChildViewController(vc)
likesContainerView?.addSubview(vc.view) //crashes here!!
vc.didMove(toParentViewController: self)
UIView.animate(withDuration: 0.5, delay: 0, usingSpringWithDamping: 1, initialSpringVelocity: 1, options: .curveEaseOut, animations: {
likesContainerView?.frame = CGRect(x: 0, y:10, width: keyWindow.frame.width, height:500)
}) { (_) in
}
}
【问题讨论】:
-
顺便说一句,如果你真的在做视图控制器包含并且要为
likesContainerView设置动画,你真的应该在动画的完成处理程序中做didMove...
标签: swift uiview uiviewcontroller addsubview