gpt4 book ai didi

swift - NSPopover 动画 contentViewController 更改并更改弹出窗口大小

转载 作者:行者123 更新时间:2023-11-30 13:34:04 24 4
gpt4 key购买 nike

我正在制作一个 NSPopover,并且已经制作完成,这样我就可以使用父 View Controller 和我的 View Controller 作为 subview 在具有滑动动画的 View Controller 之间进行转换。它工作得很好,除了在我添加它之前,弹出窗口自动调整为我的 View 大小,但现在,弹出窗口卡在固定大小。

创建弹出窗口的代码:

    self.homeVC = PopoverViewController(nibName: "PopoverViewController", bundle: nil)
self.loginVC = SignInViewController(nibName: "SignInViewController", bundle: nil)

self.containerView.view.wantsLayer = true

self.containerView.view.frame = self.homeVC!.view.bounds

self.containerView.addChildViewController(self.homeVC!)

self.containerView.view.addSubview(self.homeVC!.view)

popover.contentViewController = self.containerView

转换 View Controller 的代码:

    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
})

无论如何,我可以让弹出窗口自动调整到转换后应有的大小吗?

提前致谢。

最佳答案

我能够通过设置约束以使容器 View 与子级的大小相匹配来修复它,而不是显式设置框架。

关于swift - NSPopover 动画 contentViewController 更改并更改弹出窗口大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36275573/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com