gpt4 book ai didi

objective-c - 开始/结束外观转换的不平衡调用

转载 作者:行者123 更新时间:2023-12-04 03:09:04 25 4
gpt4 key购买 nike

我目前正在努力解决这个错误:/我已经尝试过其他 SO 线程关于这个主题的解决方案,但到目前为止没有运气。

这是错误的地方:我有一个推送 View A 的 UINavigationController,我可以从 View A 按下一个按钮来推送 View B - 工作正常。但是当我按下 View B,然后将屏幕旋转到横向模式,然后单击后退按钮时,我在控制台中得到以下输出并且 View 切换不是动画的,只是从 B 切换回 A:

2012-01-02 20:50:42.866 [13345:f803] Unbalanced calls to begin/end appearance transitions for <DimensionConversionViewController: 0x68831f0>.
2012-01-02 20:50:42.868 [13345:f803] attempt to dismiss modal view controller whose view does not currently appear. self = <UINavigationController: 0x6b541a0> modalViewController = <UISnapshotModalViewController: 0x6da5190>

这就是我将 View B 插入堆栈的方式:

- (void) showConverter:(id)sender {
[self.navigationController pushViewController:converter animated:YES];
}

- View B的viewDidLoad:

- (void) viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(updateInterface) name:@"UIDeviceOrientationDidChangeNotification" object:nil];
// ... Update text fields ...
[self updateInterface];
}

- View B 的 viewDidUnload:

- (void)viewDidUnload
{
[super viewDidUnload];
// Release any retained subviews of the main view.
// e.g. self.myOutlet = nil;
[[NSNotificationCenter defaultCenter] removeObserver:self name:@"UIDeviceOrientationDidChangeNotification" object:nil];
}

如果您有任何疑问或需要更多代码示例,请告诉我。

在此先感谢您的帮助:-)

最佳答案

事实证明,在我的情况下,问题的根本原因是我忘记更新所有 shouldAutorotateToInterfaceOrientation:不同 View Controller 中的方法为所有 UIInterfaceOrientations 返回 YES (或者假设他们都应该返回 sam)。这样做解决了问题。

关于objective-c - 开始/结束外观转换的不平衡调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8704852/

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