我使用 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()
}
}
有关详细信息,请参阅以下屏幕截图:
点击前和点击后
如何完整显示最后一个单元格?
最佳答案
我认为问题在于您的 tableview 高度仍然相同,并且在您更新顶部约束时它被推低了。
您应该将 TableView 底部约束设置为其 super View 的底部,或者您可以使用您用于 self.tableViewTop.constant 的值更新 tableView.contentInset.top
关于ios - 在运行时增加 tableview 高度以包含全部内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45822313/