所以我有一个viewcontroller,按一下按钮就会显示一个模态。因此,呈现模态的视图控制器仅允许纵向动画。而模态应该允许所有旋转类型。因此,如果我使用默认动画呈现模态,则旋转按预期工作,例如呈现模态的视图控制器保持纵向并且模态可以自由旋转。所以我想使用自定义转换来呈现和关闭模态控制器。这是用于呈现模态的片段。
SecondViewcontroller *sec = [[SecondViewcontroller alloc] initWithNibName:nil bundle:nil];
sec.transitioningDelegate = self;
sec.modalPresentationStyle = UIModalPresentationCustom;
[self presentViewController:sec animated:YES completion:nil];
所以我设置了UIViewControllerTransitioningDelegate方法来呈现和解除模态以返回我的Animator对象。所以现在当我呈现模态时,现在它会执行这个自定义动画,一切看起来都有效。除了现在模态不能再旋转并且卡在纵向中。所以我决定试着看看动画师是不是很奇怪。因此,在返回自定义Animator对象的UIViewControllerTransitioningDelegate方法中,我将它们设置为返回nil,例如使用默认系统动画。但没有运气,似乎一旦我设置
sec.modalPresentationStyle = UIModalPresentationCustom;
自动旋转不再有效。