正如标题所示,我正在尝试更改位于表视图控制器中的容器视图的大小。以下代码计算容器视图必须达到的高度。
基本上,它会将用户手机的高度减去表视图中最后一个单元格的Y-AXIS。
我试图使用containerView.bounds.maxY
并设置其值,但xcode给出了一个错误,说它只是一个get属性。所以我想知道有人会怎么做呢?在使用我的自定义计算高度显示容器视图之前,必须有一个我可以覆盖的函数。
var dynamicCotainerViewHeight: CGFloat?
@IBOutlet weak var containerView: UIView!
override func viewDidLoad() {
super.viewDidLoad()
// call somesort of method that will be called before the container view gets displayed
}
override func tableView(_ tableView: UITableView, willDisplay cell: UITableViewCell, forRowAt indexPath: IndexPath) {
if cell.reuseIdentifier == "lastStaticCell" {
let rectOfCellInTableView = tableView.rectForRow(at: indexPath)
let rectOfCellInSuperview = tableView.convert(rectOfCellInTableView, to: tableView.superview)
let screenheight = self.view.frame.size.height
// Get the desired height for the container view
dynamicCotainerViewHeight = CGFloat(screenheight) - CGFloat(rectOfCellInSuperview.origin.y)
print("Height of dynamic\(dynamicallyAllocatedCellHeight)")
}
}
这是我到目前为止在故事板中所提供的内容,以便更好地理解我的意思。由于我似乎无法将容器视图约束到其超视图边界,因此我遇到了这个问题