【问题标题】:AutoLayout - expanding label but xib view not expanded SwiftAutoLayout - 扩展标签但 xib 视图未扩展 Swift
【发布时间】:2021-04-04 02:36:23
【问题描述】:
我正在使用 tableView 和自定义 xib 来显示评论 cmets。
我正在尝试在评论标签上设置点击手势,以便它会扩展,但由于某种原因标签会扩展但不能查看,即使我已将 tableview 行高设置为自动尺寸。
如何设置标签点击手势,以便它可以扩展标签并显示视图。请任何人都可以帮助并确定问题。谢谢
我也附上了约束的图片。
【问题讨论】:
标签:
ios
swift
uitableview
autolayout
constraints
【解决方案1】:
不幸的是,这个问题的解决方案不是很好,而且当您在列表中引入越来越多的功能时,将来可能会导致各种问题。
要更改单元格,您需要通过调用beginUpdates() 和endUpdates() 在表格视图中触发布局更新。这意味着单元格应该对 tableView 具有弱引用(您可以在 cellForRow 实现中设置单元格时传递它)。
class ReviewDetailTableViewCell: UITableViewCell {
weak var tableView: UITableView?
private func readMore() {
// Update constrains like you do right now
tableView?.beginUpdates()
tableView?.endUpdates()
}
}
现在每次调用在单元格内执行约束更新的方法时,还要在传递给单元格的 tableView 上调用 beginUpdates() 和 endUpdates() 方法。