为什么显示表格视图但不显示单元格?

时间:2019-08-01 12:11:31

标签: ios swift uitableview

我建立了这样的视图:

enter image description here

并限制:

enter image description here

这是一个代码:

主控制器

class SelectTagsViewController: UIViewController, UITextFieldDelegate {
    @IBOutlet weak var selectedTagsTableView: UITableView! //added table view

    let allTags: [String] = ["Qwerty", "IT", "Manic", "VR", "WishHook", "Books", "Programing", "Aplication", "Something", "Fly", "Swift", "Earth", "Orbit", "Mars", "Summer", "Monkey", "AR", "Space"]
    var selectedTags: [String] = ["Qwerty", "IT", "Manic", "VR"]

    override func viewDidLoad() {
        super.viewDidLoad()
        selectedTagsTableView.tableFooterView = UIView(frame: CGRect.zero)
        selectedTagsTableView.backgroundColor = .lightGray
        selectedTagsTableView.register(SelectedTagCell.self, forCellReuseIdentifier: "SelectedTagCell")
    }
}



表格视图扩展

extension SelectTagsViewController: UITableViewDelegate, UITableViewDataSource {
    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let lable = selectedTags[indexPath.row]
        let cell = selectedTagsTableView.dequeueReusableCell(withIdentifier: "SelectedTagCell") as! SelectedTagCell
        cell.tagNameLabel.text = lable
        return cell
    }

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



单元格的类

class SelectedTagCell: UITableViewCell {
    @IBOutlet weak var tagNameLabel: UILabel!
    @IBOutlet weak var removeTagButton: UIButton!
    @IBAction func removeTagButtonTapped(_ sender: Any) {
    }
}

但是未显示单元格:

enter image description here

所有代码都在一个文件中,所有类和标识符都连接到组件。 我想念什么?

1 个答案:

答案 0 :(得分:1)

根据@Adrian的建议,我在下面添加了委托和数据源,并且所有这些现在都可以工作。

selectedTagsTableView.delegate = self
selectedTagsTableView.dataSource = self

修复了nil值的问题,删除了以下代码:

selectedTagsTableView.register(SelectedTagCell.self, forCellReuseIdentifier: "SelectedTagCell")