iOS UILabel 的自动布局高度不明确
iOS Autolayout height is ambiguous for UILabel
Height is ambiguous for UILabel (topCommentLabel)
Height and vertical position is ambiguous for UIView (commentContainerView)
在表格视图单元格中使用
_tableView.rowHeight = UITableViewAutomaticDimension;
我有一个 containerView,里面有 3 个 Label,我希望 Label 的内容支撑住 containerView
这是我的约束
{// comment area
[self.commentContainerView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.mas_equalTo(self.contentLabel);
make.top.mas_equalTo(self.contentLabel.mas_bottom).mas_offset(10);
}];
[self.topCommentLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.left.right.mas_equalTo(0);
}];
[self.bottomCommentLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(self.topCommentLabel.mas_bottom).mas_offset(0);
make.left.right.mas_equalTo(0);
}];
[self.readAllCommentLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(self.bottomCommentLabel.mas_bottom).mas_offset(0);
make.left.bottom.mas_equalTo(0);
}];
}
视图显示正常,但我收到了不明确的警告
为什么会出现此警告,我该如何解决?
你失踪了vertical hugging priority
。如果超级视图的高度约束及其内容,它将至少需要 1 个元素,在本例中是 Label
与其他元素具有更高 (252) 或更低 (250) 的优先级。将 hugging priority
设置为您的标签之一以忽略此布局警告。
Height is ambiguous for UILabel (topCommentLabel)
Height and vertical position is ambiguous for UIView (commentContainerView)
在表格视图单元格中使用
_tableView.rowHeight = UITableViewAutomaticDimension;
我有一个 containerView,里面有 3 个 Label,我希望 Label 的内容支撑住 containerView
这是我的约束
{// comment area
[self.commentContainerView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.mas_equalTo(self.contentLabel);
make.top.mas_equalTo(self.contentLabel.mas_bottom).mas_offset(10);
}];
[self.topCommentLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.left.right.mas_equalTo(0);
}];
[self.bottomCommentLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(self.topCommentLabel.mas_bottom).mas_offset(0);
make.left.right.mas_equalTo(0);
}];
[self.readAllCommentLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(self.bottomCommentLabel.mas_bottom).mas_offset(0);
make.left.bottom.mas_equalTo(0);
}];
}
视图显示正常,但我收到了不明确的警告
为什么会出现此警告,我该如何解决?
你失踪了vertical hugging priority
。如果超级视图的高度约束及其内容,它将至少需要 1 个元素,在本例中是 Label
与其他元素具有更高 (252) 或更低 (250) 的优先级。将 hugging priority
设置为您的标签之一以忽略此布局警告。