处理设备旋转显示

时间:2013-01-16 16:53:55

标签: iphone objective-c xcode layout constraints

我有一个相当复杂的IOS应用程序,包含图标,表格,文本字段等,涵盖20多个不同的视图控制器。我以纵向模式构建了整个应用程序,并且当然已经意识到在景观中看起来很棘手。

对于非常简单的屏幕,我使用autolayout的约束来解决任何方向变化都没有什么问题。但是,当屏幕上有多个(5+)项目时,我发现使用约束来管理所有内容非常困难。实际上,有些视图看起来需要将整个布局转换为流畅的。

是否有更好的替代约束?我唯一的另一个想法是制作重复的视图,一个用于纵向,一个用于横向。然后我可以打开deviceOrientationChange监听器。

1 个答案:

答案 0 :(得分:1)

您可以随时通过选择xib / storyboard文件并取消选中Use Autolayout来关闭约束。要仅对更复杂的视图执行此操作,我认为分解为单独的xib是可行的。

此外,有时景观真的需要完全重新排列视图(甚至添加/隐藏某些元素)。无论是否使用xib文档,您都不应回避为此定义单独的视图。