gpt4 book ai didi

macos - 我可以为自动布局中的默认 Aqua 空间使用什么常量?

转载 作者:行者123 更新时间:2023-12-03 16:01:29 25 4
gpt4 key购买 nike

根据Cocoa Auto Layout Guide ,我可以在视觉约束格式语言中使用破折号来“表示标准 Aqua 空间:”

[self addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"[a]-[b]"
options:0
metrics:nil
views:viewDict]];

但是,如果我构建一个约束没有,我似乎找不到一个 NSLayout... 常量或方法来允许我做同样的事情使用视觉格式语言:

[self addConstraint:[NSLayoutConstraint constraintWithItem:a
attribute:NSLayoutAttributeTrailing
relatedBy:NSLayoutRelationEqual
toItem:b
attribute:NSLayoutAttributeLeading
multiplier:1.0f
constant:<# ??? #>]];

在这种情况下,是否有一个常量(或另一个值或方法)可以用来定义 Aqua 空间?

最佳答案

我发现同级 View 之间的“标准 Aqua 空间”为 8.0, View 与其父 View 之间的“标准 Aqua 空间”为 20.0。

NSView* view = [NSView new] ;
NSLayoutConstraint* constraintWithStandardConstantBetweenSiblings = [NSLayoutConstraint constraintsWithVisualFormat:@"[view]-[view]" options:0 metrics:nil views:NSDictionaryOfVariableBindings(view) ] [0] ;
CGFloat standardConstantBetweenSiblings = constraintWithStandardConstantBetweenSiblings.constant ; // 8.0

NSView* superview = [NSView new] ;
[superview addSubview:view] ;
NSLayoutConstraint* constraintWithStandardConstantBetweenSuperview = [NSLayoutConstraint constraintsWithVisualFormat:@"[view]-|" options:0 metrics:nil views:NSDictionaryOfVariableBindings(view) ] [0] ;
CGFloat standardConstantBetweenSuperview = constraintWithStandardConstantBetweenSuperview.constant ; // 20.0

关于macos - 我可以为自动布局中的默认 Aqua 空间使用什么常量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14055900/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com