在视图中的UITableView中从xib文件加载UITableViewCell

时间:2015-11-12 08:23:56

标签: ios swift uitableview

我按下按钮时会弹出一个视图(不是视图控制器)。

在此视图中,我有一个UIButton和一个UITableView。我想使用我在xib文件中设计的UITableViewCell

所以我创建了我的细胞类:

class PickerViewCell: UITableViewCell {

    @IBOutlet weak var flagImageView: UIImageView!
    @IBOutlet weak var codeLabel: UILabel!
    @IBOutlet weak var nameLabel: UILabel!

    func setCell(myObject: myObject) {
        flagImageView.image = UIImage(named: myObject.code)
        codeLabel.text = myObject.code
        codeLabel.font = myObject.kPickerViewCodeFont
        nameLabel.text = myObject.name
        nameLabel.font = myObject.kPickerViewNameFont
    }
}

我的xib文件:

enter image description here

这里我没有设置xib的所有者(我也尝试过),我为UITableViewCell设置了自定义类,没有重用标识符(我也试过了)。

在我的视图的init函数(包含表视图的函数)中,我执行以下操作:

let nib = UINib(nibName: "PickerViewCell", bundle: nil)
tableView.registerNib(nib, forCellReuseIdentifier: "cell")

最后我实现了这个方法:

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCellWithIdentifier("cell") as! PickerViewCell

    let myObject = myObjects[indexPath.row]
    cell.setCell(myObject)

    return cell
}

当我想显示(创建)我的视图时,调试器停在

let cell = tableView.dequeueReusableCellWithIdentifier("cell") as! PickerViewCell

我收到以下错误:

Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<NSObject 0x7f9b934d8c70> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key codeLabel.'

出了什么问题?

编辑:

enter image description here

1 个答案:

答案 0 :(得分:0)

@IBOutlet weak var codeLabel: UILabel!中检查您与PickerViewCell与IB的关联。尝试重新连接。