ios - Swift - 内部具有水平堆栈视图的单元格表视图包含不同的文本 - 自动高度
问题描述
我正在为 iOS 快速编写应用程序,但表格视图有问题。该表的单元格内部有一个水平 stackView,其中包含三个包含不同长度文本的标签。我已经设置了所有约束,并且似乎可以自动调整单元格的高度,但我意识到了一些事情:它会根据最短的高度自动调整单元格的高度。因此,它会截断较长的一个,如您在图像中看到的那样。请帮助我不知道如何解决它,我在网上找不到解决方案。
如何根据单元格组件高度设置单元格高度。 图像问题:在第 8 节它根据最短的一个截断。
解决方案
Auto Layout
中Horizontal StackView
的UITableViewCell
。即,将前导、顶部、尾随和底部约束添加到单元格ContentView
。在代码中或在代码中将numberOfLines
所有的UILabel
s设置为 0。IdentityInspector
yourLabel.numberOfLines = 0
添加以下UITableView Delegate
方法来配置单元格高度。
func tableView(_ tableView: UITableView, estimatedHeightForRowAt indexPath: IndexPath) -> CGFloat {
return 200
}
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return UITableViewAutomaticDimension
}
它会自动将所有单元格调整为所需的高度,这是三个标签中的最大高度,以在每个标签中显示整个文本。
用于sizeToFit()
调整标签的垂直对齐方式。使文本与左上角垂直对齐(这显然是通过修改标签框架来完成的 - 缩小标签以包含文本)。
cell.labelOne.sizeToFit()
cell.labelTwo.sizeToFit()
cell.labelThree.sizeToFit()
cell.layoutIfNeeded()
推荐阅读
- java - Java:哈希映射到嵌套的 JSON 对象
- reactjs - TypeError: test.each 不是 React 测试中的函数
- c++ - 为嵌套枚举类声明友元插入运算符(运算符 <<)
- python - 我需要帮助将此 REST API Curl 命令转换为 Python 请求
- javascript - RequiredJS 加载 JS 文件失败
- .htaccess - 除少数文件和文件夹外,禁止将所有请求重定向到 403
- c# - 如何在 Windows 事件查看器中删除和创建日志
- sql - Oracle SQL 查询 Group By with having 子句
- python - 字节模式的正则表达式匹配会产生不寻常的结果 - '.' 不等于 [\x00-\xff]
- html - getBoundingClientRect() 为 Chrome 中的嵌套 SVG 返回错误值