滑动后未调用 didRotateFromInterfaceOrientation

Posted

技术标签:

【中文标题】滑动后未调用 didRotateFromInterfaceOrientation【英文标题】:didRotateFromInterfaceOrientation not called after swipe 【发布时间】:2012-08-29 09:51:50 【问题描述】:

我遇到了以下问题:

我有一个 UITabBarController,它在每个选项卡中显示不同的信息,例如一张CD。用户可以使用 UIInterfaceOrientationLandscape 只看到封面。要转到下一张 CD,用户可以返回并选择一张新 CD,信息会再次显示在 UITabBarController 中。 (这一切都很好。) 此外,为了更轻松地观看大量 CD,可以通过滑动手势(横向或纵向)转到下一张 CD。然后我只需更改tabBarController.viewControllers 并设置显示新CD 信息的viewControllers。 现在的问题是:在我刷到下一张 CD 之后,didRotateFromInterfaceOrientation 方法不再被调用,我无法从横向模式更改为纵向模式。滑动手势可防止调用 didRotateFromInterfaceOrientation 方法!我只有 ios 4.2.1 有这个问题。使用 iOS 5,一切都可以完美运行!

有人知道 iOS 4 发生了什么吗?

【问题讨论】:

【参考方案1】:

您需要将 shouldAutorotateToInterfaceOrientation YES 返回到 TABBARView 控制器的所有基本控制器中

希望对你有帮助

【讨论】:

感谢您的回答,但是每个类中的 shouldAutorotateToInterfaceOrientation 已经返回 YES。我也不认为这可能是原因,因为从纵向模式更改为横向模式总是有效的。它只是在 iOS 4.2.1 中刷卡后不起作用。在 iOS 5 中我没有问题。

以上是关于滑动后未调用 didRotateFromInterfaceOrientation的主要内容,如果未能解决你的问题,请参考以下文章

完成 AsyncTask 后未调用 onPostExecute

在 reloadData 后未调用 cellForRowAtIndexPath

异步任务;调用方法 onPreExecute() 后未调用 doInbackground()

强制终止后未调用 AppDelegate 方法

成功执行 isCustomResponse() 后未调用 handleChallenge()

在 notifydatasetchanged 后未调用 getview