我有一个tableViewCell,其中包含一个应该占屏幕高度40%的imageSlider。
无论如何可以使用自动布局?将单元格添加到tableView后,已经为单元格计算了高度,因此对于单元格高度,将忽略添加的任何约束。
我可以实现heightForRow并返回正确的值,但我想知道我是否可以单独使用AutoLayout来实现这一点?
cell.imageSlider.heightAnchor.constraint(equalTo: tableView.heightAnchor, multiplier: 0.4)
答案 0 :(得分:0)
向图像滑块添加高度约束,并在单元格中声明相应的iboutlet。将其常量值设置为view.bounds.size.height / 60.0。让我知道它是否有效。
答案 1 :(得分:0)
向图像滑块添加高度约束,并在单元格中声明相应的iboutlet。将其常量值设置为view.bounds.size.height * 0.4。设置顶部&来自superView(在你的情况下是TableViewCell)的imageSlider的底部约束。我知道它是否有效。 另外,添加以下代码
- (void)viewWillLayoutSubviews{
[self.imageSlider layoutIfNeeded];
//OR
[cell layoutIfNeeded];
}
layoutIfNeeded将自动更新约束。