我在工具栏中有一个自定义视图。今年的某个时候,Apple 弃用了
NSToolbarItem.minsize
和 maxsize
,所以现在我收到了编译器警告。如何替换当前版本 macOS 中已弃用的约束以用于自定义视图(在运行时绘制)?我一直在寻找,但我无法弄清楚。
自动调整 NSToolbarItem 实例的大小
从 macOS 10.14 SDK 上链接的应用程序开始,如果
没有设置NSToolbarItem
和minSize
属性,AppKit 将使用约束自动计算这些值,类似于maxSize
已设定。 (以前,如果未设置项目的最小和最大尺寸属性,则使用包含视图的尺寸。)您可以使用约束来定义 AppKit 将计算的最小和最大尺寸。 例如,您可以创建以下约束以使视图的最小宽度为 100,最大宽度为 200:NSTouchBarItem
的大小属性view.widthAnchor.constraint(greaterThanOrEqualToConstant: 100).isActive = true
view.widthAnchor.constraint(lessThanOrEqualToConstant: 200).isActive = true
身高也是如此。省略最小宽度或高度约束将使用视图的固有内容大小,该大小会自动调整以用于控件的本地化目的。
如果正在测量的视图未定义高度或宽度,则使用视图的框架大小。