gpt4 book ai didi

ios - 方向发生变化,我的所有 View Controller 何时旋转?

转载 作者:可可西里 更新时间:2023-11-01 06:16:58 25 4
gpt4 key购买 nike

如果我有几个 UIViewControllers 被推送到我的导航堆栈,不可见的(底部) View Controller 如何/何时重新布局?它们是否都与可见 View Controller 同时布局,还是仅在弹出到显示堆栈后才布局?

编辑:我目前自己管理调整 subview 的大小(而不是设置 autoresizing=YES)。我在 willAnimateRotationToInterfaceOrientation 方法中调整大小,以便很好地动画化。我猜不在显示堆栈顶部的任何 uiviewcontroller 都不会调用此方法。那么是否有一种内置方法可以知道当前的 uiviewcontroller 是否正在显示,如果不是,我应该重写哪种方法来重新布局不在显示堆栈顶部的 uiviewcontroller 的 subview ?

谢谢!

晴天

最佳答案

我建议检查 viewWillAppear 中的方向。如果您在此处检查方向,您可以放心,对于给定的方向, View 将始终以正确的布局显示。不过,您仍然需要在 willAnimateRotationToInterfaceOrientation 中旋转它。

-(void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
if (UIDeviceOrientationIsLandscape([UIDevice currentDevice].orientation))
{
[self layoutForPortrait];
}

else if (UIDeviceOrientationIsPortrait([UIDevice currentDevice].orientation))
{
[self layoutForLandscape];
}
}

关于ios - 方向发生变化,我的所有 View Controller 何时旋转?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7342693/

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