gpt4 book ai didi

ios - 自动布局 VFL : align all trailing in an horizontal constraint

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:03:41 27 4
gpt4 key购买 nike

我有四个标签,一个堆叠在前一个下方,但其基线与其内容 View 的顶部对齐,彼此之间没有垂直间距。

我是这样写代码的

[contentView addConstraint:[NSLayoutConstraint constraintWithItem:topFirstLabel_
attribute:NSLayoutAttributeBaseline
relatedBy:NSLayoutRelationEqual
toItem:contentView
attribute:NSLayoutAttributeTop
multiplier:1.0f
constant:20.0f]];

[contentView addConstraint:[NSLayoutConstraint constraintWithItem:topSecondLabel_
attribute:NSLayoutAttributeBaseline
relatedBy:NSLayoutRelationEqual
toItem:contentView
attribute:NSLayoutAttributeTop
multiplier:1.0f
constant:47.0f]];

[contentView addConstraint:[NSLayoutConstraint constraintWithItem:topThirdLabel_
attribute:NSLayoutAttributeBaseline
relatedBy:NSLayoutRelationEqual
toItem:contentView
attribute:NSLayoutAttributeTop
multiplier:1.0f
constant:70.0f]];

[contentView addConstraint:[NSLayoutConstraint constraintWithItem:topFourthLabel_
attribute:NSLayoutAttributeBaseline
relatedBy:NSLayoutRelationEqual
toItem:contentView
attribute:NSLayoutAttributeTop
multiplier:1.0f
constant:87.0f]];

现在,我希望所有标签都通过尾随空格与其父 View 对齐。

我可以使用唯一的 VFL 字符串来做到这一点吗?像这样,虽然这个例子会使应用程序崩溃:

NSDictionary *views = NSDictionaryOfVariableBindings(contentView, topFirstLabel_, topSecondLabel_, topThirdLabel_, topFourthLabel_);
NSDictionary *metrics = @{ @"bigMargin" : @12 };

[contentView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:[topFirstLabel_][topSecondLabel_][topThirdLabel_][topFourthLabel_]-bigMargin-|"
options:NSLayoutFormatAlignAllTrailing
metrics:metrics
views:views]];

最佳答案

library可能会帮助你。它使用垂直线性布局概念,您可以根据需要添加填充。

关于ios - 自动布局 VFL : align all trailing in an horizontal constraint,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17569132/

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