横向和纵向的分隔 xib

Posted

技术标签:

【中文标题】横向和纵向的分隔 xib【英文标题】:Separated xibs for landscape and portrait 【发布时间】:2013-11-08 08:23:24 【问题描述】:

我是 ios 编程的新手。我正在尝试制作一个简单的表单,基于页面的应用程序。我已经为横向\纵向方向分离了 xib。但是当我在 textField 中添加文本并旋转设备时,文本消失了。如何临时、动态地保存已填写字段的信息以及何时旋转设备以使用信息填写已归档的文本字段?

【问题讨论】:

嘿,如果您的问题得到解决,请在此处发布您的解决方案。它将对其他人有所帮助。 我找到了解决方案。当系统调用 willRotateToInterfaceOrientation: 方法时,我将已归档的文本字段存储在 NSMutableDictionary 中,旋转后,我填充它们。 IBOutletCollection 最适合您不需要存储文本字段值,否则您可以选择使用什么。 【参考方案1】:

你应该试试GPOrientation

请看这里:http://www.logisian.blogspot.in/2012/08/support-landscape-and-portrait-using.html

GPOrientation 帮了我很多,我相信它会对你有所帮助。

GPOrientation 的教程见这里:http://www.youtube.com/watch?feature=player_embedded&v=KtVAsLioOEc

【讨论】:

【参考方案2】:

虽然您可能偶尔需要单独的 xib 用于横向和纵向方向,但通常实际需要的是使用布局约束。

有两种方法可以做到这一点:

覆盖视图或控制器上的 layoutSubviews 或 viewWillLayoutSubViews,并根据其超级视图的边界调整子视图的框架。要了解视图与边界,请在 iTunesU 上观看免费的斯坦福 iOS 课程(或者只是愚弄一下它——很快就会变得清晰)。 使用布局约束。

对于不平凡的项目,我个人的偏好是根据here的原则开发基于代码的视图,并覆盖布局子视图。

【讨论】:

以上是关于横向和纵向的分隔 xib的主要内容,如果未能解决你的问题,请参考以下文章

带 2 XIB 的旋转纵向横向

如何同时支持纵向和横向模式 - XIB 的可重用视图

纵向xib调整为横向时需要改变UIScrollView contentSize

一个视图控制器,纵向和横向两个视图

怎么把table的外面的边框去掉

以纵向和横向初始化 UIViewController