Objective c 热可可有没有办法完全禁用所有窗口的自动布局/约束?

Objective c 热可可有没有办法完全禁用所有窗口的自动布局/约束?,objective-c,macos,cocoa,Objective C,Macos,Cocoa,我正在使用Cocoa构建一个以编程方式生成的UI,并为每个视图自动生成autolayout/约束,从而消除我试图实现的所有标记。有没有办法完全禁用自动布局?我宁愿手动使用好的旧设置框,我不需要任何大小调整或任何花哨的东西。谢谢是的,请关闭TranslatesAutoReshizingMaskintoConstraints以获取您的视图 view.translatesAutoresizingMaskIntoConstraints = NO; 如果此属性的值为“是”,则系统将创建一组 与视图属性指

我正在使用Cocoa构建一个以编程方式生成的UI,并为每个视图自动生成autolayout/约束,从而消除我试图实现的所有标记。有没有办法完全禁用自动布局?我宁愿手动使用好的旧设置框,我不需要任何大小调整或任何花哨的东西。谢谢

是的,请关闭TranslatesAutoReshizingMaskintoConstraints以获取您的视图

view.translatesAutoresizingMaskIntoConstraints = NO;
如果此属性的值为“是”,则系统将创建一组 与视图属性指定的行为重复的约束 自动调整大小的面具

默认情况下,对于您选择的任何视图,该属性都设置为“是” 以编程方式创建。如果在Interface Builder中添加视图,则 系统自动将此属性设置为“否”


你试过了吗?我已经关闭了它,我仍然可以看到在调试器中生成的一堆约束,它忽略了我正在设置的帧,因为其中一个约束中有一个固定的大小是的,它可以工作。我假设在将视图添加到superview之前必须设置此属性。它只是您自己的视图,还是您使用第三方组件?现在是我的视图NSStackView和NSButton,我正在通过代码创建它们。我在创建对象后立即设置标志。谷歌的大多数答案都是关于view.translates自动调整大小GMaskintoConstraints或重载requiresConstraintBasedLayout的,但迄今为止没有一个对我有效的答案与我的设置有关,是的。基本上,我有一个父nswindow,然后创建一个子NSPanel,将自定义NSView设置为contentView,然后创建另一个嵌套的NSView,其中包含NSButton和NSView。我现在可以很好地控制所有NSView的大小,但不能控制NSView按钮。无论如何,谢谢你的帮助!我们会继续挖掘