我正在制作一个NSPopover,并且已经实现了它,所以我可以使用父视图控制器和我的视图控制器作为子视图,使用滑动动画在视图控制器之间进行转换。它运作良好,除非我添加它之前,弹出窗口自动调整大小到我的视图大小,但现在,弹出窗口卡在固定大小。
创建popover的代码:
self.loginVC!.view.frame = self.homeVC!.view.bounds
self.containerView.addChildViewController(self.loginVC!)
let transition: NSViewControllerTransitionOptions = .SlideLeft
self.containerView.transitionFromViewController(self.homeVC!, toViewController: self.loginVC!, options: transition, completionHandler: { finished in
self.homeVC!.view.removeFromSuperview()
self.homeVC!.removeFromParentViewController()
self.containerView.view.bounds = self.loginVC!.view.bounds
})
转换视图控制器的代码:
<% unless params[:action] == 'home' %>
<div class="contaner-fluid custom-padding full-page-height">
</div>
<% end %>
无论如何,我可以让popover自动调整大小到转换后的大小吗?
提前致谢。
答案 0 :(得分:0)
我能够通过而不是显式设置框架来修复它,设置约束以使容器视图与子项的大小相匹配。