我使用Swift 3和Xcode 8.1创建了一个应用程序。我上方有UITableview
和UIView
,点击其中的按钮即可显示和隐藏。当UIView
出现时,UITableview
的最后一个单元格未完全显示。
我在按钮中使用以下代码:
func filterShowHide ()
{
if !isShown
{
filterImage.image = UIImage(named: "ME-Filter-re")
self.filterView.isHidden = false
self.tableViewTop.constant = 0
// tableViewHeight.constant = tableViewHeight.constant * 1.5
isShown = true
}
else
{
filterImage.image = UIImage(named: "ME-Filter")
self.tableViewTop.constant = -(self.HeaderView.frame.height) + self.filterBTN.frame.size.height
self.filterView.isHidden = true
isShown = false
// tableViewHeight.constant = tableViewHeight.constant / 1.5
}
UIView.animate(withDuration: 0.25) {
self.view.layoutIfNeeded()
}
}
有关详细信息,请点击此处的屏幕截图:
点击之前和点击
之后
如何完整显示最后一个单元格?
答案 0 :(得分:0)
我认为问题是你的tableview高度仍然相同,当你更新顶部约束时它会被推下来。
您应该将表视图底部约束设置为其超级视图的底部,或者您可以使用您用于self.tableViewTop.constant的值更新tableView.contentInset.top