Ios iPhone5的Xcode限制把我搞砸了

Ios iPhone5的Xcode限制把我搞砸了,ios,constraints,iphone-5,autolayout,Ios,Constraints,Iphone 5,Autolayout,我正在尝试做一件看起来很简单的事情,但是由于xcode中的新自动布局,我很难理解约束到底是怎么回事 我要做的是在主视图中创建两个子视图 基本上,一个滚动视图在顶部,一个uiview在底部,中间没有空间 在iPhone 5上,我希望它是 400px 148px 在iPhone4上: 358px 112px 每次添加约束时,一个约束会消失,或者另一个约束不允许我更改高度 我不知道这是否可以解释,但欢迎任何帮助我讨厌Interface Builder中新的自动布局。我做的第一件事就是禁用它。只需通过单

我正在尝试做一件看起来很简单的事情,但是由于xcode中的新自动布局,我很难理解约束到底是怎么回事

我要做的是在主视图中创建两个子视图 基本上,一个滚动视图在顶部,一个uiview在底部,中间没有空间

在iPhone 5上,我希望它是
400px
148px

在iPhone4上:
358px
112px

每次添加约束时,一个约束会消失,或者另一个约束不允许我更改高度

我不知道这是否可以解释,但欢迎任何帮助

我讨厌Interface Builder中新的自动布局。我做的第一件事就是禁用它。只需通过单击文件的所有者来禁用它,然后取消选中“自动布局”(AutoLayout),如果您希望约束具有固定的高度,请使用AutoLayout)。只需在interfacebuilder中选择元素,并手动添加高度约束。(底部的小加号,然后是高度)


如果您想要固定高度,只需输出这些约束并操纵它们的常量值。

我发现自动调整大小和大小类的问题在于,它们的目的是处理复杂的UI布局,因此:

  • 如果你正在构建的UI像苹果提供的应用程序一样简单,那么你不必使用它们在所有设备上运行
  • 如果用户界面真的很复杂,那么最终会遇到很多约束,以至于没有人能够弄清楚到底是什么。这是好的,直到有一些巨大的需求变化在一个紧迫的截止日期,然后唯一的解决办法将是工作随着时间的推移
  • 使用带有固定设计的自动布局构建一些东西是非常愉快的,这是一种非常优雅的方式,所有东西似乎都在正确的位置,完全在您的控制之下,您根本不需要编写任何代码。但是,只要必须进行更改,找出所有约束之间的关系就比阅读代码困难


    对于一些真正复杂的多设备布局来说,这项新技术可能是必须的,但我认为仍然有很多只使用自动调整大小掩码和代码的有用应用的空间。这么说可能有点丢脸,但基本上,我讨厌自动布局。

    这不能回答您的问题,但我鼓励您观看关于自动布局的WWDC会议视频。AL确实需要进行相当多的调整,但我认为,一旦你对它感到满意,你会喜欢它用于大多数任务。我开始观察它们,当时我禁用了autolayout,但当我了解它的工作原理时,我肯定想使用它,这就是我现在要做的,因为周五是我的最后期限,我已经在自动停车上浪费了几个小时了。真的吗?接受答案?只要适应,约束就没那么凌乱了。