7

我收到此错误。我不知道为什么会调用它,而且谷歌并没有真正提供帮助。有什么建议么?

-[UIWindow endDisablingInterfaceAutorotation] called on <UIWindow: 0x4e0ec50; frame = (0 0; 320 480); opaque = NO; autoresize = RM+BM; layer = <CALayer: 0x4e0f9e0>> without matching -beginDisablingInterfaceAutorotation. Ignoring.
4

5 回答 5

8

我最近遇到了同样的问题。原来,我不小心显示了同一个 UIActionSheet 两次。例如。

[actionSheet showInView:aView];

... more code ...

// WOOPS! I already did this
[actionSheet showInView:aView];

当 UIActionSheet 被解除(大约第 12 次,可能是 -beginDisablingInterfaceAutorotation 堆栈深度)时,它会导致错误。删除对 -showInView: 的冗余调用修复了问题。

于 2010-04-04T20:28:04.163 回答
6

UIViewController使用类执行自定义演示时,我遇到了类似的问题UIViewControllerAnimatedTransitioning。对我来说,打印输出如下所示:

-[UIApplication endIgnoringInteractionEvents] called without matching -beginIgnoringInteractionEvents. Ignoring.
-[UIWindow endDisablingInterfaceAutorotationAnimated:] called on <UIWindow: 0x7f9f83f42db0; frame = (0 0; 375 667); autoresize = W+H; gestureRecognizers = <NSArray: 0x7f9f83f44ed0>; layer = <UIWindowLayer: 0x7f9f83f40ca0>> without matching -beginDisablingInterfaceAutorotation. Ignoring.
-[UIWindow endDisablingInterfaceAutorotationAnimated:] called on <UITextEffectsWindow: 0x7f9f862553a0; frame = (0 0; 375 667); opaque = NO; autoresize = W+H; layer = <UIWindowLayer: 0x7f9f83f9a1e0>> without matching -beginDisablingInterfaceAutorotation. Ignoring.

我发现错误是由调用transitionContext.completeTransition(true)两次引起的(一次在animateTransition(_:),另一个在CAAnimation委托animationDidStop(_:flag:)方法中)。你可能想检查你没有做类似的事情。

于 2015-11-18T20:13:50.997 回答
3

将 UIViewAnimationOptionLayoutSubviews 添加到动画选项中解决了我的问题。

于 2015-01-24T04:12:08.290 回答
-1

我无缘无故地遇到了类似的问题。我的构建没有任何变化。我所要做的就是从我的测试设备中删除我的应用程序,重建并重新部署,这个问题就解决了。值得一试!

于 2015-08-15T14:34:28.440 回答
-6

看起来你必须先打电话-beginDisablingInterfaceAutorotation,而你没有这样做。

于 2010-03-03T21:59:50.370 回答