我有一个自定义的UITableViewCell,我将其用作UITableView的页脚。
func tableView(tableView: UITableView, viewForFooterInSection section: Int) -> UIView? {
let cell = tableView.dequeueReusableCellWithIdentifier("footerCommentCell") as! FooterCommentTableViewCell
cell.footerIndex = section
cell.delegate = self
return cell
}
这个页脚有自动布局
http://joxi.ru/DrloGbpC4Eb3vA
1 - 视图1
2 - 观点2
3 - 查看2个高度约束(view2Height
)
在初始阶段view2Height
为0,对于某些操作,我想将此约束常量更改为另一个值,例如 - 50,并将我的标题更改为。
有没有办法实现这个?
答案 0 :(得分:0)
您可以覆盖heightForFooterInSection并根据需求和重新加载表部分返回0或50。
override func tableView(tableView: UITableView, heightForFooterInSection section: Int) -> CGFloat {
//return value based on condition
}
答案 1 :(得分:0)
这很容易。当你说动态时,意味着你需要一些条件来改变它。 例如: 子类化两个UITableviewCells,然后重新加载表视图。
答案 2 :(得分:0)
添加到@ 2ank3th答案,您可以获取页脚的单元格/视图。
func tableView(tableView: UITableView, heightForFooterInSection section: Int) -> CGFloat {
let footerView = tableView.footerViewForSection(0) as! FooterCommentTableViewCell
// Your section number. (0 for understanding purpose)
// Then you can modify the height constraint and return the height of footer here.
}
答案 3 :(得分:0)
func tableView(tableView: UITableView, heightForFooterInSection section: Int) -> CGFloat
{
return UITableViewAutomaticDimension
}
func tableView(tableView: UITableView, estimatedHeightForFooterInSection section: Int) -> CGFloat
{
return 44.0
}