【发布时间】:2013-04-02 11:28:22
【问题描述】:
我正在开发适用于 iOS 5 的应用程序,并且我有一个需要在纵向视图中推送的控制器。从风景中以纵向模式推动控制器非常棘手,但最后我想出了如何做到这一点。我通过presentModalViewController 或pushViewController 显示控制器,并在控制器内部覆盖preferredInterfaceOrientationForPresentation 方法。
-(UIInterfaceOrientation)preferredInterfaceOrientationForPresentation
{
return UIInterfaceOrientationPortrait;
}
它工作正常,只是它有一个问题。下面是场景。
- 用户在横向模式下握住设备,当前控制器在横向模式下正确显示
- 用户进行一些操作,然后出现仅纵向控制器(作为模态控制器并处于纵向模式)
- 用户关闭模态控制器
- 以前在横向工作的控制器现在是纵向的,但用户仍然以横向方式握住他的设备 ---> 这就是问题
我试图通过调用[UIViewController attemptRotationToDeviceOrientation] 来修复它,但它没有帮助。
提前感谢您的帮助。
【问题讨论】:
标签: iphone objective-c cocoa-touch ios5 landscape-portrait