标签: ios uitableview autolayout tableviewcell
我尝试为UITableViewCell执行两种不同的状态,但是当我更改单元格的大小时,此更改会破坏许多约束AutoLayout。 这两个州是:
UITableViewCell
AutoLayout
UIView
UILabel
初始状态展开但当我将行的height缩小为折叠状态时,许多约束(主要是UIView B和UILabels)会中断AutoLayout
height
UIView B
UILabels
步骤:
UITableView
有没有办法或办法避免违反限制?也许有两种不同的电池设计?
谢谢!
答案 0 :(得分:1)
在您的情况下,更好的解决方案是使用具有不同标识符的两个单元格 - 一个包含视图A,另一个包含视图A,B。然后你可以根据自己的需要.dequeueReusableCell(withIdentifier: %CELL_A_OR_CELL_B_IDENTIFIER%, for: indexPath)。
.dequeueReusableCell(withIdentifier: %CELL_A_OR_CELL_B_IDENTIFIER%, for: indexPath)
不太合适的解决方案是使用堆栈视图或调整约束。在这两种情况下,避免冲突和防止错误布局的唯一方法是正确设置约束优先级。我会尝试将圈数优先级的约束设置为小于1000(如990)