如何从纵向视图打开横向视图
Posted
技术标签:
【中文标题】如何从纵向视图打开横向视图【英文标题】:how to open a landscape view from a portrait view 【发布时间】:2011-05-04 10:24:28 【问题描述】:我有一个显示图像库的纵向视图,单击图像应以横向视图打开它以进行编辑。现在我知道我可以手动将新视图旋转 90 度以使其“看起来”像在风景中,但没有合适的解决方案吗?例如不知何故我可以强制设备进入横向模式?
【问题讨论】:
【参考方案1】:我不得不手动轮换我的观点,或者至少我的发现表明了这一点。所以这就是我现在正在做的事情:
以纵向模式显示第一个视图。 当用户转到下一个视图时,我手动对其应用变换以将其旋转 PI/2 弧度并设置其框架和中心属性。【讨论】:
【参考方案2】:推送一个配置为仅支持横向模式的模态视图控制器。
【讨论】:
实际上,我无法推送,我有一个自定义控制器,可以根据需要替换视图。所以基本上没有新的视图控制器被推送,它是一个具有不同视图的视图控制器。 另外,这仅适用于被推送的第一个视图控制器(或根控制器)。如果您希望第一个视图控制器是纵向的,而下一个是横向的,则它不起作用。猜测手动旋转是我唯一的选择。【参考方案3】:要强制设备进入横向模式,您可以添加
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
return (interfaceOrientation == UIInterfaceOrientationLandscapeRight);
将此添加到要以横向显示的视图应该会使视图进入横向模式...
【讨论】:
查看UIView
的文档,没有shouldAutorotateToInterfaceOrientation
方法,如果您正在谈论在UIViewController
中覆盖它,我已经在对Andrew 的回复的评论中提到它除非视图控制器被推送,否则不起作用。
不知道为什么UIView
没有这样的方法时你得到了赞成票以上是关于如何从纵向视图打开横向视图的主要内容,如果未能解决你的问题,请参考以下文章
如何在 iPad 的 UiSplitviewcontroller 中显示主视图