设置UIlabel的高度
Setting the height of UIlabel
我在自定义 uitableview 单元格中有一个标签。我正在使用自动布局来定位标签。我的问题是当标签没有任何文本时,如何将标签的高度设置为零。或者如何使标签高度为0。该项目支持ios 8 所以使用stackview 是不可能的。标签也很宽,我无法设置恒定高度 constraint.My 布局如下。
您可以设置标签的高度限制 >= 0。标签会根据内容更新其大小,如果缺少文本,高度将为 0。
在 tableviewcell 中给出除 UILabel 之外的高度限制,你需要 hide.Change 你的 Tableviewcell 高度它有效。
例如,你的UILabel高度是'30',tableviewcell高度是130.You可以给出130-30 = 100的单元格高度。
//only sample code
func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
if indexPath.row == 0
return 130
else
return 100
}
另一个可能的解决方案是,设置高度约束并取 outlet
并在文本为 nil 时将其 constant
设置为零。
只需按住 ctrl 并从高度约束拖动到 class 即可将出口连接到约束。
然后您可以在需要时通过更改它的常量以编程方式更改它的高度。
例如,
@IBOutlet weak var labelHeightConstraint: NSLayoutConstraint!
并改变常量,如
self.labelHeightConstraint.constant = 0
希望这会有所帮助:)
首先将高度约束设置为标签。 ctrl + 将高度约束拖动到 class 以将出口连接到约束。即
@IBOutlet 弱变量 LabelHeightConstraint: NSLayoutConstraint!
并在实现中将标签的高度约束设置为零。如下图....
self.LabelHeightConstraint.constant = 0;
if(check the label contains data)
{
self.LabelHeightConstraint.constant = 20;
}
else
{
self.LabelHeightConstraint.constant = 0;
}
这个逻辑一定行得通......
在需要时将文本设置为 nil,并将内容拥抱优先级设置为高
我在自定义 uitableview 单元格中有一个标签。我正在使用自动布局来定位标签。我的问题是当标签没有任何文本时,如何将标签的高度设置为零。或者如何使标签高度为0。该项目支持ios 8 所以使用stackview 是不可能的。标签也很宽,我无法设置恒定高度 constraint.My 布局如下。
您可以设置标签的高度限制 >= 0。标签会根据内容更新其大小,如果缺少文本,高度将为 0。
在 tableviewcell 中给出除 UILabel 之外的高度限制,你需要 hide.Change 你的 Tableviewcell 高度它有效。
例如,你的UILabel高度是'30',tableviewcell高度是130.You可以给出130-30 = 100的单元格高度。
//only sample code
func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
if indexPath.row == 0
return 130
else
return 100
}
另一个可能的解决方案是,设置高度约束并取 outlet
并在文本为 nil 时将其 constant
设置为零。
只需按住 ctrl 并从高度约束拖动到 class 即可将出口连接到约束。
然后您可以在需要时通过更改它的常量以编程方式更改它的高度。
例如,
@IBOutlet weak var labelHeightConstraint: NSLayoutConstraint!
并改变常量,如
self.labelHeightConstraint.constant = 0
希望这会有所帮助:)
首先将高度约束设置为标签。 ctrl + 将高度约束拖动到 class 以将出口连接到约束。即
@IBOutlet 弱变量 LabelHeightConstraint: NSLayoutConstraint!
并在实现中将标签的高度约束设置为零。如下图....
self.LabelHeightConstraint.constant = 0;
if(check the label contains data)
{
self.LabelHeightConstraint.constant = 20;
}
else
{
self.LabelHeightConstraint.constant = 0;
}
这个逻辑一定行得通......
在需要时将文本设置为 nil,并将内容拥抱优先级设置为高