iOS7 呈现类似于 MFMailComposeViewController for iPad 的 childViewController

Posted

技术标签:

【中文标题】iOS7 呈现类似于 MFMailComposeViewController for iPad 的 childViewController【英文标题】:iOS7 present childViewController similar to MFMailComposeViewController for iPad 【发布时间】:2013-10-29 22:41:49 【问题描述】:

我的 iPad 应用程序中的一个视图控制器是调查表。我正在尝试呈现它,以便它出现在 childViewController 模态 segue 中,就像 MFMailComposeViewController 的默认 segue 一样。

这是我想要实现的外观:

我使用的代码似乎不起作用:

AskQuestionViewController *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"AskQuestionViewController"];
[self addChildViewController:vc];
vc.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
[self.splitViewController presentViewController:vc animated:YES completion:nil];

【问题讨论】:

你为什么要添加它作为一个孩子?具体是什么不起作用? 每当我运行我的代码时,它都会崩溃。我正在尝试实现与您呈现 MFMailComposeViewController 时的默认模式相同的模式。据我了解,实现这一点的方法是将其添加为 childviewcontroller。当然我可能是错的。 不要将其作为子项添加并提供异常的详细信息(堆栈跟踪和消息)。 当我不把它作为一个孩子添加它时,它会做一个模态转场,但我试图让这个覆盖转场看起来像图像中的那个。每当你呈现一个 MFMailComposeViewController 视图控制器时,你都会得到这样的外观。 【参考方案1】:

试试:

AskQuestionViewController *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"AskQuestionViewController"];
vc.modalPresentationStyle = UIModalPresentationPageSheet;
[self.splitViewController presentViewController:vc animated:YES completion:nil];

【讨论】:

有效!当我第一次尝试它时,我将它作为 modalTransitionStyle 而不是 modalPresentationStyle。我不敢相信这是多么容易。谢谢! 太好了,很高兴它有帮助!

以上是关于iOS7 呈现类似于 MFMailComposeViewController for iPad 的 childViewController的主要内容,如果未能解决你的问题,请参考以下文章

我们如何获得类似于 ios 6 的 ios 7 的分组 UITableview 样式

iOS 7 UITableViewController 导航类似于 iOS 6

如何产生类似于 iOS 7 模糊视图的效果?

UITextField 上的 UITapGestureRecognizer 不再适用于 IOS 7.1

ios7 NSInvalidArgumentException 呈现 UIPopoverController

用Qt获得类似iOS7的模糊效果