尝试在表格视图中为单元格设置行高

时间:2018-09-11 18:09:44

标签: ios swift uitableview

我正在更新我的一个应用程序,并且已经在该应用程序的其他区域中使用了此方法,并且该方法可以工作,但是由于某种原因,它无法在tableView上工作。

tableView在ViewController(CurrencyViewController)的内部

@IBOutlet weak var tableView: UITableView!

tableView.dataSource = self

extension CurrencyViewController: UITableViewDataSource {
    func numberOfSections(in tableView: UITableView) -> Int {
        return 1
    }

    func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
        return 200.0
    }

    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return currencies.count
    }

    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

        let cell = tableView.dequeueReusableCell(withIdentifier: "currencyCell")! as! CurrencyTableViewCell

        cell.name.text = currencies[indexPath.row].currencyName
        cell.name.textColor = Styles.whiteColor()
        cell.symbol.text = currencies[indexPath.row].currencyCode
        cell.symbol.textColor = Styles.whiteColor()

        cell.backgroundColor = Styles.mainColor();

        return cell
    }
}

enter image description here

tableView本身可以工作,只是不更新​​行的高度。

Swift的更新有什么变化吗?

2 个答案:

答案 0 :(得分:2)

您似乎不符合UITableViewDelegate吗?

extension CurrencyViewController: UITableViewDataSource, UITableViewDelegate

答案 1 :(得分:1)

如果在IB删除中连接了dataSource(和delegate

tableView.dataSource = self

您还必须在扩展名中采用UITableViewDelegate,仅连接委托是不够的

extension CurrencyViewController: UITableViewDataSource, UITableViewDelegate {