Xcode 4接口生成器-设计时自动调整大小

Xcode 4接口生成器-设计时自动调整大小,xcode,xcode4,resize,interface-builder,window,Xcode,Xcode4,Resize,Interface Builder,Window,我刚刚迁移到Xcode 4,Interface Builder的工作方式与在Xcode 3中的工作方式不太一样。在设计用户界面时,每当我调整包含任何子视图(如NSBox或自定义视图)的视图(包括窗口本身)的大小时,所有子视图都会随之重新缩放 我可以理解为什么这是有意义的,因为它显示了应用程序在运行时的行为,但在设计时它非常烦人;每次我想向窗口添加更多控件时,我都需要展开窗口,然后将所有子视图调整回原来的大小,然后添加新控件。这快把我逼疯了 我一直在寻找阻止这种情况发生的方法,但似乎无法做到这一点

我刚刚迁移到Xcode 4,Interface Builder的工作方式与在Xcode 3中的工作方式不太一样。在设计用户界面时,每当我调整包含任何子视图(如NSBox或自定义视图)的视图(包括窗口本身)的大小时,所有子视图都会随之重新缩放

我可以理解为什么这是有意义的,因为它显示了应用程序在运行时的行为,但在设计时它非常烦人;每次我想向窗口添加更多控件时,我都需要展开窗口,然后将所有子视图调整回原来的大小,然后添加新控件。这快把我逼疯了

我一直在寻找阻止这种情况发生的方法,但似乎无法做到这一点。首先,我认为,由于它是在模拟运行时行为,如果我在windows视图属性中取消选中“自动调整子视图的大小”,将停止自动调整大小。但那没用

然后,我在Interface Builder用户指南中找到了以下内容:

Interface Builder提供了两种调整窗口大小的行为:

  • 您可以只调整窗口的大小

  • 可以调整窗口及其所有内容的大小

默认情况下,调整窗口大小只会调整窗口大小。要调整窗口及其内容的大小,请在按住Command键的同时单击并拖动窗口的调整大小控制柄。按住Command键可使Interface Builder为窗口包含的视图应用当前的自动调整大小行为。此技术允许您查看窗口的运行时大小调整行为,或将窗口及其内容缩放到所需大小

通过从菜单中选择布局>实时自动调整大小,可以切换默认大小调整模式。切换时,按住Command键仅调整窗口的大小

我在菜单中找不到这个,而是:编辑器>画布>实时自动调整大小 (也许文件在这方面有点过时?)

有趣的是它被禁用了。我以任何方式打开和关闭它只是为了确保,但自动调整大小仍在发生


有没有其他人遇到过这个问题,或者是因为我错过了Xcode 4中的某些更改?

Xcode 4非常不同

可以调整窗口及其所有内容的大小

在视图中,对象->属性检查器->自动调整子视图的大小
啊哈!我刚刚在网上找到了答案:

问题是在Xcode 4.3或更高版本中,默认情况下启用了“自动布局”功能

要禁用此功能,请转到nib的文件检查器,并在“Interface Builder文档”下取消选中“使用自动布局”


通过禁用此功能,Interface Builder的工作方式似乎与Xcode 3中的工作方式更为相似。它还带来了熟悉的“struts和strings”样式的自动调整选项,而不是我还没有机会了解的新的“约束”功能

问题是我没有选中“自动调整子视图的大小”,当我在IB中调整视图的大小时,它仍然会调整它们的大小!