0

我正在使用IIViewDeckController并面临一个非常奇怪的问题,如下所示?:

我的ViewController(这是一个IIViewDeckController)处于横向模式,然后我以模态方式在其顶部呈现一个新的视图控制器。现在模态视图控制器不支持横向模式,因此仅以纵向模式呈现。
到目前为止,一切都很顺利。

但是,一旦我尝试关闭这个模态呈现的控制器,IIViewDeckController's视图的框架就会变成 (320,568) (我认为这IIViewDeckController已经旋转到纵向模式,但我不确定)。所以我检查了self.interfaceOrientation哪个显示“4”(即UIInterfaceOrientationLandscapeLeft)应该是实际情况。

但是这两件事让我感到困惑,因为框架指示纵向模式,而属性显示不同的东西。现在由于这个框架发生了变化而没有改变,interfaceOrientation结果是错误地计算了视图中对象的框架。

4

1 回答 1

0

I faced the same problem, I solved it by categorizing IIViewDeckController inside AppDelegate class.

Following is the one method that was required to be categorized:-

@interface IIViewDeckController (categoryForOrientation)
- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation;
@end

@implementation IIViewDeckController (categoryForOrientation)

- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation{
    return [self interfaceOrientation];
}
于 2014-03-10T07:03:16.503 回答