我使用UIStoryboardSegue
- (void)perform
{
[(UIViewController *)self.destinationViewController setModalPresentationStyle:UIModalPresentationFormSheet];
[(UIViewController *)self.destinationViewController setModalTransitionStyle:UIModalTransitionStyleCrossDissolve];
[(UIViewController *)self.sourceViewController presentViewController:self.destinationViewController animated:YES completion:nil];
}
然后在destinationViewController
中,parentViewController
的值为nil
。怎么可能,以及如何使用UIModalPresentationFormSheet
在destinationViewController
中获取sourceViewController
?
最佳答案
请参阅文档。从您的代码片段来看,parentViewController
应该为 nil
,因为它没有嵌入到其parentView 的容器 View 中。
您的意思是 presentingViewController
吗?
啊...它在 iOS 5 中发生了变化。在早期版本中,如果没有父级,则 parentViewController
确实会返回呈现的 View Controller 。现在它返回零。您应该使用 preseningViewController
来代替。
关于ios - UIViewController 没有带有 UIModalPresentationFormSheet 的parentViewController?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17884063/