NSView阻止窗口/内容视图水平调整大小

时间:2015-05-22 22:03:55

标签: macos autolayout nswindow nsviewcontroller yosemite

我的主视图中有一个NSView阻止我的窗口/主视图正确调整大小。即使我全屏显示,我的主视图也无法填满屏幕(右侧有一些黑色空间)。我知道原因是特定的视图(或内部的东西),当我删除它时,我的应用程序行为正常。什么会导致NSView控制"它的窗户正在成长?

以下是对该视图的限制:

enter image description here

更新:我发现new Nightmare() .goto('http://yahoo.com') .type('input[title="Search"]', 'github nightmare') .click('.searchsubmit') .run(); 里面有一个拥抱条件设定为750.我已经把它降到了250,现在它已经成长,但是我无法将其从一些"一些"尺寸。我打电话给它"一些"大小,因为它没有什么特别之处:它比我原来的全屏宽度略小,而且与我的IB宽度不同。

1 个答案:

答案 0 :(得分:2)

通常,优先级高于// To add: $scope.textFields.push({ str: someVariable, value: someValue }); // To remove: var index = $scope.textFields.map(function(t) { return t.value; }).indexOf(someValue); if (index !== -1) { $scope.textFields.splice(index, 1); } (500)的约束可以强制窗口的大小。这包括由内在内容大小生成的隐式约束,如果视图具有这样的约束,其具有为内容拥抱和压缩阻力设置的优先级。

所以,如果你有一个文本字段,其水平内容拥抱优先级是750,并且有一系列约束条件将其前端和后端连接到窗口的内容视图中边缘(或者,类似地,将文本字段的宽度与内容视图的宽度相关联),然后窗口不能够大到足以伸展"拉伸"那个文本字段。

同样,如果文本字段的水平压缩阻力很高,则窗口不能缩小到必须压缩文本字段的位置。