gpt4 book ai didi

ios - 模态关闭后 viewWillAppear 没有更新旋转

转载 作者:行者123 更新时间:2023-11-29 01:05:04 26 4
gpt4 key购买 nike

我有两个 View Controller (ViewController1 和 ViewController2),其中 ViewController1 有一个到 ViewController2 的模式转场,而 ViewController2 可以返回到 ViewController1。

如果我按照以下步骤操作:

ViewController1—rotate to landscape—modal to VC2—ViewController2—rotate to portrait—dismiss to VC1

然后,在 ViewController1 的 viewWillAppear 中,我打印 view.frame.size 并得到这个(在 iPhone 6s 模拟器上运行):

(667.0, 375.0)

所以这意味着宽度比高度长,或者它仍然是横向的。

这告诉我 ViewController1 还没有旋转,这是有道理的,因为这是在 viewWillAppear 中。

我目前的选择(据我所知):

  1. 使用 viewDidAppear — 不是首选,因为我在这里重新加载 Collection View 并且更改会很明显。

  2. 创建一个 unwind segue — 不推荐,因为这需要 Storyboard。

那么我的其他选择是什么?是否有最适合我需要的 View Controller 方法?

最佳答案

你是对的:在 viewWillAppear 期间,ViewController1 的 View 尚未处于窗口层次结构中,因此它没有机会进行布局。一般来说,如果你有一些处理布局的代码,我可能会考虑将其放在 viewWillLayoutSubviews 或 viewDidLayoutSubviews 方法中。

关于ios - 模态关闭后 viewWillAppear 没有更新旋转,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36511499/

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