我有一个UITableViewController,我通过
设置footerViewself.tableView.tableFooterView = FooterView()
在FooterView类中,我通过
添加了标签self.addSubView(label)
我注意到以下情况。
我的问题是
当我将footerView的Frame设置为(0,0,100,100)时,它似乎在tableView上重叠。如何将页脚放在tableView的底部?
通过页脚的addSubView()添加标签时。它是与footerView或tableView相关的定位吗?
答案 0 :(得分:1)
FooterView的默认高度为44.如果您没有将footerView的高度设置为更多,然后将标签设置为高度100,则它会重叠。
使用footerView进行定位。
您可以使用UITableViewDelegate方法设置footerView的高度.Below是实现您想要的方式.Footer视图仅在表视图的底部。
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 5
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView .dequeueReusableCellWithIdentifier("cellIdentifier") as! UITableViewCell
cell.textLabel?.text = "trial"
return cell
}
func tableView(tableView: UITableView, heightForFooterInSection section: Int) -> CGFloat {
if section == 1{
return 100
}
return 0
}
func numberOfSectionsInTableView(tableView: UITableView) -> Int {
return 2 //The number you needed + 1
}
func tableView(tableView: UITableView, viewForFooterInSection section: Int) -> UIView? {
if section == 1{
return FooterView()
}
return nil
}
删除此行
self.tableView.tableFooterView = FooterView()