ios – 使用Swift设置自定义表格视图页脚

我正在尝试将自定义页脚设置为我的表格视图.我在一个nib文件上创建了页脚并创建了一个受控制的页脚.
class LoginTableFooter: UITableViewheaderfooterView

在viewDidLoad()中我写了这段代码

let footerNib = UINib(nibName: "LoginTableFooter",bundle: nil)
        tableView.register(footerNib,forheaderfooterViewReuseIdentifier: "LoginTableFooter")

然后我实现了viewForFooterInSection

func tableView(_ tableView: UITableView,viewForFooterInSection section: Int) -> UIView? {
    let cell = self.tableView.dequeueReusableheaderfooterView(withIdentifier: "LoginTableFooter")
    let header = cell as! LoginTableFooter

    return cell
}

从未调用viewForFooterInSection.我也试图实现viewForHeaderInSection但它也没有被调用.你知道出了什么问题吗?我的表视图中只有一个部分;是否可以/更好地直接在viewDidLoad上设置页脚?

解决方法

实施 – 代表和您的tableview的数据源并设置两者 – heightForFooterInSection& viewForFooterInSection
tableView.delegate = self
tableView.dataSource = self

// set view for footer
func tableView(_ tableView: UITableView,viewForFooterInSection section: Int) -> UIView? {
    let footerView = UIView(frame: CGRect(x: 0,y: 0,width: tableView.frame.size.width,height: 40))
    footerView.backgroundColor = UIColor.blue
    return footerView
}

// set height for footer
func tableView(_ tableView: UITableView,heightForFooterInSection section: Int) -> CGFloat {
    return 40
}

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...