2012-12-07 79 views
1

视图 - 控制得到了与我的UIVewController和旋转的问题,我可以有一些帮助的事情。防止“家长”旋转

基本上,我有可以从纵向旋转到横向视图。当它旋转到风景时,我向我的肖像展示了一个不同的视图(图表)......这是基于UITableView的输入视图。这一切工作正常。现在

,我的纵向视图(只有我的纵向视图)也有一个“电子邮件”按钮按下时,创建并呈现MFMailComposeViewController,使用户可以通过电子邮件发送一些数据。

这工作正常,但如果用户将iPhone旋转到横向,而在MFMailComposeViewController视图,我的底层视图不会获得旋转的通知,所以我知道将底层视图更改为图表视图。所以,当用户在仍处于横向状态的情况下解除邮件视图时,我会在横向位置出现错误地显示的原始“纵向”输入视图。

因此,无论如何,当MFMailComposeViewController显示时,我可以在我的原始纵向ViewController中获取旋转通知,以便在原始视图重新出现时我可以进行基础更改?或者,当MFMailComposeViewController旋转时,我可以防止底层视图旋转吗?

希望是有道理的,感谢您的建议。

+0

什么IOS版本?解决这个问题在iOS5和6之间有很大不同 – Stakenborg

+0

是的,它是iOS6.0。让我头疼 – Fittoburst

回答

1

尝试在父视图控制器实现-(UIInterfaceOrientation)preferredInterfaceOrientationForPresentation并将其设置为UIInterfaceOrientationPortrait。

你也可以查看你的MFMailComposeViewController在做什么,但我认为你必须继承它并实现-(void)didRotateFromInterfaceOrientation:,然后通过通知或委托发回信息......但你不需要与preferredInterfaceOrientationForPresentation。

希望这会有所帮助!

+0

这项工作?你弄明白了吗? – Stakenborg

+0

是的。非常感谢。工作过一种享受。 – Fittoburst