gpt4 book ai didi

ios - 为什么我的 UITableViewCell 中的多行 UILabel 在第一次加载时被截断,但在滚动时会自行更正?

转载 作者:搜寻专家 更新时间:2023-10-31 08:03:52 25 4
gpt4 key购买 nike

我的应用程序中的一个表格 View 出现问题,想知道是否有人遇到过类似的问题。我在自定义 tableviewcell 中有 2 个标签 - questionLabelanswerLabel - 它们具有以下约束:

enter image description here enter image description here

在两个 UILabel 上,我都将行数设置为 0,使它们成为多行,并向两者添加了 preferredmaxLayoutWidth 属性,如下所示:

cell.questionLabel.preferredMaxLayoutWidth = cell.questionLabel.frame.width
cell.answerLabel.preferredMaxLayoutWidth = cell.answerLabel.frame.width

根据 StackOverflow 的其他建议,我在 viewDidLoad() 方法中也有以下内容:

self.faqTableView.rowHeight = UITableViewAutomaticDimension
self.faqTableView.estimatedRowHeight = 140.00

在第一次加载时,标签仍然被截断,即使行设置为 0,而且奇怪的是在标签的不一致的地方。然而,当向下滚动屏幕然后回到顶部时,标签会自动更正并且布局完美。请参见下面的屏幕截图:

enter image description here

有没有人以前遇到过这个问题,如果有的话,你能给我指出正确的方向吗?我不确定这是我设置失败还是我的自动布局约束有问题。

最佳答案

enter image description here

enter image description here

像这样添加约束。删除下面几行

cell.questionLabel.preferredMaxLayoutWidth = cell.questionLabel.frame.width
cell.answerLabel.preferredMaxLayoutWidth = cell.answerLabel.frame.width
self.faqTableView.estimatedRowHeight = 140.00

将 UILabel 的行数设置为零并实现下面的方法

-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
return UITableViewAutomaticDimension;
}

关于ios - 为什么我的 UITableViewCell 中的多行 UILabel 在第一次加载时被截断,但在滚动时会自行更正?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48621102/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com