NSToolbarItem 的自定义视图控制器的大小约束

问题描述 投票:0回答:1

我在工具栏中有一个自定义视图。今年的某个时候,Apple 弃用了

NSToolbarItem.minsize
maxsize
,所以现在我收到了编译器警告。如何替换当前版本 macOS 中已弃用的约束以用于自定义视图(在运行时绘制)?我一直在寻找,但我无法弄清楚。

swift macos appkit nstoolbaritem
1个回答
0
投票

来自 macOS 10.14 的 AppKit 发行说明

自动调整 NSToolbarItem 实例的大小

从 macOS 10.14 SDK 上链接的应用程序开始,如果

NSToolbarItem
没有设置
minSize
maxSize
属性,AppKit 将使用约束自动计算这些值,类似于
NSTouchBarItem 的大小属性
已设定。 (以前,如果未设置项目的最小和最大尺寸属性,则使用包含视图的尺寸。)您可以使用约束来定义 AppKit 将计算的最小和最大尺寸。 例如,您可以创建以下约束以使视图的最小宽度为 100,最大宽度为 200:

view.widthAnchor.constraint(greaterThanOrEqualToConstant: 100).isActive = true
view.widthAnchor.constraint(lessThanOrEqualToConstant: 200).isActive = true

身高也是如此。省略最小宽度或高度约束将使用视图的固有内容大小,该大小会自动调整以用于控件的本地化目的。

如果正在测量的视图未定义高度或宽度,则使用视图的框架大小。

© www.soinside.com 2019 - 2024. All rights reserved.