2010-05-03 62 views
12

我有一个使用UIModalPresentationFullScreen将TransitionStyle设置为UIModalTransitionStylePartialCurl的模态视图控制器。这工作很好。UIModalTransitionStylePartialCurl不旋转

我的问题是,当设备旋转时,我的视图旋转(按照预期),但“卷曲”效果没有。有谁知道这是否是有意设计的,还是有其他需要完成的事情?谢谢。

回答

3

根据我的经验,UIModalTransitionStylePartialCurl风格将两个视图控制器都置于半缓冲状态,而它们不按正常规则播放。另一个例子是,部分卷曲模态演示似乎并不尊重视图层次模式,这意味着当你有模态视图堆叠时,如果你显示一个模态更高的堆栈它应该接管,但是部分卷曲阻止了这一点。

例如视图模式显示其他视图: 视图1 - >视图2 - >视图3 告诉视图1以模态方式显示视图4 视图1 - >视图4 如果视图3显示为部分卷曲,则当您请求时视图4的显示。

此外,您不能在部分卷曲下以模态方式显示其他视图(官方文档声明这一点,这本质上意味着它不像正常的模式显示那样) 视图 - >视图(局部卷曲) 告诉视图2至模态显示视图3 什么也没有发生

IMO苹果还没有完全出炉UIModalTransitionStylePartialCurl风格这是一种耻辱,因为它是奇妙。长话短说,使用它时会出现问题,因为当被要求做任何事情之外,它不会像预期的那样行为。

0

检查您正在呈现的ViewController是否具有shouldAutorotateToInterfaceOrientation:已实现,并返回所需的值。

+0

是的,视图旋转良好。这是不旋转的卷曲效果。 – Mongo 2010-10-22 19:59:53

+1

现在我明白了。卷曲的父视图保持与以前相同的方向,并且只有模态视图随着设备更改方向而旋转。我相信你不得不手动旋转父视图,因为它目前不活动。 – chaos0815 2010-10-25 16:25:26

2

当我遇到这个问题时,我决定可以将模态表达的视图自动排除在deviceDidRotateSelector中,这样可以避免这个问题。

+0

这实际上也是一个很好的解决方案。感谢分享。 – Mongo 2011-08-05 15:01:16