问题标签 [autolayout]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3775 浏览

macos - 如何根据自动布局 contentView 的最小尺寸自动调整 NSWindow

目前,我的应用程序的行为允许我调用我编写的这个额外函数,该函数将窗口大小调整为 FittingSize。

但是我可以通过一些内置的自动布局代码来自动化这种行为,以便窗口始终是它的 contentView 的最小值而不是这个万能的黑客吗?

编辑:我发现我可以检查 [[self contentView]fittingSize],但是我如何观察它以防它发生变化,或者我应该自己触发它?

0 投票
2 回答
589 浏览

xcode - 自动布局的烦人问题

我对自动布局表有一个很烦人的问题,如果我尝试更改一些值、宽度、单击标准或从等于小于或大于禁用的插座更改,比如果我想修改插座我必须重新选择e 做修改...这很烦人,有什么解决办法吗?

0 投票
1 回答
1304 浏览

xcode - 告诉 Xcode 不要在项目中使用自动布局

我可以告诉 Xcode 4 我不在项目中使用自动布局吗?
目前,每个新创建的 xib 都会启用自动布局,这意味着我必须在创建后手动将其关闭,而我不希望这样。

0 投票
1 回答
9931 浏览

xcode - 如何使用 Xcode 的自动布局调整视图大小

我第一次在我有几个 NSPopUpButtons 的项目中使用 Xcode 的自动布局功能。现在我想要实现的是在一行中有两个 popUpButtons 和它们的标签,当窗口调整大小时,我希望两个 popUpButtons 调整它们的宽度,同时保持彼此之间的水平间距。

但是,无论我如何应用约束,我都不会让 popUpButtons 随窗口改变它们的大小。他们总是会打破他们的水平间距限制,只是增加/减少标签的间距。我希望从这个屏幕截图中我可以更清楚地了解我所做的事情:

在此处输入图像描述

我已将标签和 popUpButtons 之间的间距设置为具有 1000 优先级的固定值,并将 popUpButtons 的宽度约束设置为大于或等于初始大小。

我必须如何设置我的约束来调整 popUpButtons 的大小?

0 投票
2 回答
3243 浏览

xcode - 如何在 Xcode 中隐藏自动布局指南?

我发现 Xcode 中新的自动布局功能非常有用。但是 Xcode 总是将自动布局约束显示为蓝色引导线。这有时很烦人,因为这些指南显示在视图的中心和边缘,也就是调整大小手柄所在的位置。

在此处输入图像描述

所以有时我无法通过拖动手柄来调整视图的大小,因为我无法抓住它们。单击将始终选择蓝色约束引导线。(而且我必须使用尺寸检查器调整大小)。

有没有办法(暂时)隐藏这些约束指南?

0 投票
1 回答
1971 浏览

objective-c - NSScrollView 的文档视图上的自动布局问题

我试图找到使用 Lion 的自动布局的最佳方法来制作这个简单的窗口,其中包含一个可滚动的视图,其中包含一个居中的图像和一个边框。看看我很棒的 ascii 艺术:

NSScrollView 的文档视图是一个翻转的 NSView 子类,它绘制背景图案,并在其中添加用户选择的图像(即不确定大小)。添加图像视图时,我给它约束以使其在文档视图中居中。文档视图本身受到约束,表示它希望比加载的图像略大。我想要的是明显的行为:在加载大于 scollview 的图像时,滚动条变为活动状态,在调整窗口大小时滚动条正常激活/停用。

但是,在加载大图像时,我看到的是文档视图正常扩展,但滚动视图和窗口随之扩展!在那之后,窗口不允许将大小调整得更小。显然我做得不对,但我不明白为什么。

我尝试更改文档视图的约束的优先级,任何高于 NSLayoutPriorityWindowSizeStayPut 的内容和窗口都会像上面一样扩展(我猜是有道理的),但任何更低的内容和文档视图永远不会调整大小,调整窗口的大小更小但滚动条不是启用。

有谁知道我是否需要在其他地方设置其他优先级,或者我需要额外的约束,或者完全不同的方法......我应该设置文档视图的“固有大小”吗?指向我还没有看到的任何自动布局开源/示例代码的指针也会很酷。

0 投票
1 回答
3763 浏览

objective-c - 自动布局正在调整我的窗口大小

我有一个启用了自动布局的笔尖,其中包含一个视图控制器的视图,另外还有一个带有占位符视图的窗口,可以将它们添加到其中。占位符具有相对于它的超级视图和窗口中的其他视图的约束,并且在涉及我的视图控制器之前,我让占位符按照我想要的方式调整窗口大小。稍后我加载笔尖并将其顶级视图添加为占位符的子视图,并且我还手动创建约束以使其与占位符的边缘对齐。

一切都很好,我在我的应用程序中的几个实例中使用了这种模式,但在某些情况下,添加视图后,我的窗口会调整大小!它正在缩小到添加视图的最小尺寸,而不是扩大到当前窗口大小的视图。

到目前为止,我发现防止这种情况发生的唯一方法是,在添加视图并创建其约束时,还要设置视图的框架,以使其具有占位符和窗口当前状态的初始大小。有时这没问题,但我希望能够定义更复杂的约束,而不是简单地将每个边缘与占位符超级视图对齐。我不想为每种情况编写帧算法。

有谁知道发生了什么?如果窗口已经决定了占位符的大小,而不是相反,那么在添加子视图以使当前窗口大小仍然优先时我该怎么办?

我已经看到 Xcode 的 IB 窗口中的弹出菜单似乎是关于仅影响子视图和超级视图的约束(对于我的所有笔尖都设置为前者),与此功能相关的是什么?我还没有找到任何关于它的东西。

0 投票
1 回答
498 浏览

cocoa - 如何设置 NSOutlineView 以使用自动布局考虑最小内容的宽度?

我有NSSplitView里面NScrollView和基于视图的NSOutlineView里面NSScrollView,它有例如一列。我的大纲视图必须只能垂直滚动,并且必须考虑列内容的最小宽度以适应它。我认为他们必须返回-(NSSize)fittingSize{minColumnWidth, 0},但它返回 {0,0}。我怎样才能做到这一点?

0 投票
6 回答
52011 浏览

ios - 在 iOS 6 中启用自动布局,同时保持向后兼容 iOS 5

什么是利用 iOS 6 新的自动布局功能的最佳方式,同时仍然提供与早期版本 iOS 上的旧设备的兼容性?

0 投票
1 回答
1439 浏览

cocoa - 视觉格式语言 - 填充区域

我有几个大小是静态的对象,它们紧贴屏幕的顶部和底部。但是,屏幕中间有一个空白区域,我想通过方向更改来拉伸它。

我通过添加一个可以拉伸的额外清晰视图 [paddedView] 解决了一个问题,但我想知道是否有更简单的方法可以在没有 paddedView 的情况下仅使用 Visual Format Language 来做到这一点。