我有两个彼此相邻的标签,但是即使我在左边的标签上设置了截断规则,右边的标签也会被截断。
我的代码:
// Club name
labelFirst = [[UILabel alloc] init];
labelFirst.adjustsFontSizeToFitWidth = NO;
[labelFirst setLineBreakMode:NSLineBreakByTruncatingTail];
[labelFirst setTranslatesAutoresizingMaskIntoConstraints:NO];
[self.contentView addSubview:labelFirst];
labelSecond = [[UILabel alloc] init];
[labelSecond setAdjustsFontSizeToFitWidth:NO];
[labelSecond setTranslatesAutoresizingMaskIntoConstraints:NO];
[labelSecond setText:NSLocalizedString(@"IsCancelled", nil)];
[self.contentView addSubview:labelSecond];
NSLayoutConstraint *constraint = [NSLayoutConstraint constraintsWithVisualFormat:@"H:|-73-[label]-[label2]-10-|" options:0 metrics:nil views:@{@"label": labelFirst, @"label2": labelSecond}]
[self.contentView addConstraints:constraint];
Run Code Online (Sandbox Code Playgroud)
我应该怎么做?
这是内容压缩优先级发挥作用的地方。根据要首先压缩的值将这些值设置为较高和较低。要在抗压缩方面优先考虑的标签较高。降低要首先压缩(截断)的标签。
您可以通过编程方式执行此操作(默认值为750):
[labelFirst setContentCompressionResistancePriority:749
forAxis:UILayoutConstraintAxisHorizontal];
Run Code Online (Sandbox Code Playgroud)
或在“大小检查器”选项卡下的界面构建器中:
这是另一个答案,将详细介绍它们如何工作。
| 归档时间: |
|
| 查看次数: |
614 次 |
| 最近记录: |