【问题标题】:UITableView Prototype cell is crashingUITableView 原型单元格崩溃
【发布时间】:2020-01-08 23:56:23
【问题描述】:

当我尝试修改单元格子视图时,UITableViewCell 因“在隐式展开可选值时意外发现 nil”而崩溃。

注册tableView单元格

self.tableView.register(TravelTypeTableViewCell.self, forCellReuseIdentifier: "TravelCell")

表格视图方法

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

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

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

    let cell = tableView.dequeueReusableCell(withIdentifier: "TravelCell", for: indexPath) as! TravelTypeTableViewCell
    cell.travelTypeSegment.selectedSegmentIndex = 0
    return cell

}

TableViewcell 类

class TravelTypeTableViewCell: UITableViewCell {
    @IBOutlet var travelTypeSegment: UISegmentedControl!

    override func awakeFromNib() {
        super.awakeFromNib()
        // Initialization code
    }

    override func setSelected(_ selected: Bool, animated: Bool) {
        super.setSelected(selected, animated: animated)

        // Configure the view for the selected state
    }

}

故事板图片

【问题讨论】:

  • 您不得注册原型单元。 travelTypeSegment 是否连接在单元格中?

标签: ios swift uitableview


【解决方案1】:

对此发表评论

self.tableView.register(TravelTypeTableViewCell.self, forCellReuseIdentifier: "TravelCell")

至于原型单元,您不应注册它们,因为这是自动为它们完成的,并确保 travelTypeSegment 已连接到 IB

【讨论】:

    猜你喜欢
    • 2023-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-18
    • 1970-01-01
    • 2018-02-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多