ios - 如何找到“sizeToFit”标签的高度?
问题描述
我有一个包含可变大小字符串的标签。标签嵌入在固定宽度的垂直堆栈中。
var productName: UILabel = {
let lbl = UILabel()
lbl.translatesAutoresizingMaskIntoConstraints = false
lbl.numberOfLines = 0
lbl.sizeToFit()
lbl.textColor = .black
lbl.font = UIFont(name: "HelveticaNeue", size: 13)
lbl.textAlignment = .center
return lbl
}()
var Vstack: UIStackView = {
let stack = UIStackView()
stack.axis = .vertical
stack.alignment = .center
return stack
}()
在将文本插入其中后,我需要此标签的高度,因为它决定了它所在的 tableViewCell 的大小。由于它包含的字符串是可变的并且标签本身是“sizeToFit”,因此我无法使用首先想到的事情:
productName.frame.height
productName.frame.size.height
productName.layer.frame.height
将文本插入标签后,有什么方法可以获取标签的高度?
解决方案
您可以使用intrinsicContentSize,它返回UILabel元素的标签文本的CGSize,
您可以在本文中了解更多信息:intrinsicContentSize
推荐阅读
- http - 无法在 if..else 条件中获取变量数据:“undefined err go”
- ssis - 在 CMD 中执行时,SSIS 包不移动文件
- mysql - 如何检查我的内部连接是对还是错?
- android - Android Google Map Gradle 依赖错误
- c++ - 矢量擦除循环给出错误,这是什么意思?
- jquery - 无法使用开放图在 Facebook 上分享动态图像
- javascript - 选中多个列表中的复选框时选择所有复选框
- c++ - 关闭编译器优化 (ARM) 时出现错误“在没有活动异常的情况下调用终止”
- c# - 即使我已经添加也缺少参考
- sql - 基于第一张和第二张表的更新