Xcodecheckbox在哪里“将自动resize的掩码转换为约束”

在其中一个WWDC 2012video中,Auto Layout By Example(自动布局示例)中,他们使用Autolayout演示OS X应用程序,大约7或8分钟后,他展示了如何为单个视图取消选中属性检查器中的一个框,该框被称为“将自动resize的屏幕转换为约束” 。 现在,我很清楚这个框的代码等价于translatesAutoresizingMaskIntoConstraints布尔值,但我似乎无法在iOS或OS X项目的任何位置find此checkbox。 我的项目使用Autolayout。 我真的想要这个checkbox,因为我在学习Autolayout(以及将spring / struts应用程序转换为AL)时遇到的一个问题是Xcode为每个视图生成的约束条件,以及如何清理它们并合理地覆盖一些/所有的代码。 为了一次转换一个视图,我想要closures这些自动生成的约束。

为什么我看不到这个checkbox? 我正在使用Xcode 4.6。

该checkbox在Interface Builder(IB)中可用,但前提是您正在开发针对OS X的Cocoa项目。对于iOS,目前尚不可用。 您只能以编程方式进行设置。

根据我的理解,iOS上的自动布局(其他人可以随意在这里介绍)并不是OS X上可用的完整实现。

说实话,给你以后说,这个checkbox可能是你不必担心的东西。 我认为将OS X项目升级到Auto Layout非常重要,但通常对于iOS而言,您不太可能混合使用其中的一种。 也就是说,你可以在File Inspector中将你的Xibcheckbox“使用Autolayout”,否则你不这样做。

在这里输入图像说明

也就是说,有一个用例可能需要混淆那个标志。 这就是如果你想为一个视图创build一个独立的Xib文件,然后使用loadNibNamed以编程方式loadNibNamed 。 这样做时,默认情况下,旧式自动resize约束将转换为新式自动布局约束。 通常我想添加我自己的,所以我把这个标志设置为zap'em。

myView.translatesAutoresizingMaskIntoConstraints = NO

无论如何,这是另一回事。

以下是更多信息的链接,尽pipe您已经无疑已经看过:

采用自动布局

我要说的一件事是,如果你一开始就在自动布局方面挣扎 – 如果你不是,那么你就不会是人类,我们都是 – 然后我会坚持使用Interface Builder,并考虑黄金法则。 对我来说最重要的是它讨厌含糊不清。 这就像是一个真空。 在你可以删除你不想要的约束之前,你必须添加一个你想要的那个,然后去掉旧的。

我做的另一个错误是混合自动布局和框架。 所以我会做一些代码,检查帧的宽度,然后将其应用于约束。 糟糕的错误 那真的以眼泪结束。 当你进入自动布局时,真的忘了用CGRectframe等来做什么是很重要的。

坚持下去。 从IB和实验中的一些简单的观点开始。 真的有疯狂的方法。

还有一个值得关注的链接是:

10件事情你需要知道关于cocoaAutolayout