自定义TableViewCell没有故事板

Özg*_*sil 2 ios swift xcode6

我正在使用TableViewCell扩展的自定义cocoa类,它不会给出任何错误消息,但单元格不会出现在tableview中.滚动变长但表格单元格不可见.

我在我的ViewController中键入了这个:

tableView.registerClass(CustomTableViewCell.self, forCellReuseIdentifier: "Cell")

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath)->UITableViewCell
    {
        var cell:CustomTableViewCell? = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as? CustomTableViewCell
        if cell == nil {
            cell = CustomTableViewCell(style: UITableViewCellStyle.Default, reuseIdentifier: "Cell")
         }

        cell!.labTime.text = filtered[indexPath.row].name!
        return cell!
    }
Run Code Online (Sandbox Code Playgroud)

我的细胞类看起来像

    var labTime = UILabel()

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

        labTime = UILabel(frame: contentView.bounds)
        labTime.font = UIFont(name:"HelveticaNeue-Bold", size: 16)

        contentView.addSubview(labTime)
    }
Run Code Online (Sandbox Code Playgroud)

我不使用任何storyBoard或xib文件.找不到解决方案,谢谢

Ami*_*t89 7

这样做.

属性的所有视图初始化都应该在init方法中.在自定义单元类中添加此项

var labTime: UILabel!

required init(coder aDecoder: NSCoder) {

            super.init(coder: aDecoder)
    }


    override init(style: UITableViewCellStyle, reuseIdentifier: String!) {

         super.init(style: style, reuseIdentifier: reuseIdentifier)
         //Do your cell set up

        labTime = UILabel(frame: contentView.bounds)
        labTime.font = UIFont(name:"HelveticaNeue-Bold", size: 16)

        contentView.addSubview(labTime)
    }
Run Code Online (Sandbox Code Playgroud)

在视图控制器的viewDidLoad方法中添加以下行.

tableView.registerClass(CustomTableViewCell.self, forCellReuseIdentifier: "Cell")
Run Code Online (Sandbox Code Playgroud)

设置这两个代表 - UITableViewDataSourceUITableViewDelegate