具有Tableview的自定义Xib单元格无法正常工作

时间:2016-07-04 09:19:00

标签: swift uitableview tableviewcell

我正在使用以下教程创建一个带有xib文件的滑出菜单: https://www.raywenderlich.com/78568/create-slide-out-navigation-panel-swift

现在,我正在使用自定义tableview单元格创建xib tableview视图。阅读有关stackoverflow的几个问题我得到了以下代码

    override func viewDidLoad() {
    super.viewDidLoad()

    var nib = UINib(nibName: "MenuCell", bundle: nil)

    tableView.registerNib(nib, forCellReuseIdentifier: "menucell")
    tableView.reloadData()

    print("count: \(animals.count)")
}

和实际的单元格

extension SidePanelViewController: UITableViewDataSource {

func numberOfSectionsInTableView(tableView: UITableView) -> Int {
    return 1
}

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {

    return animals.count
}

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

    var cell:MenuTableViewCell = self.tableView.dequeueReusableCellWithIdentifier("menucell", forIndexPath: indexPath) as! MenuTableViewCell

    cell.configureCell(animals[indexPath.row])
    return cell
}

但是tableview没有显示带有标题的自定义tableview单元格。任何人都可以帮我解决这个问题吗?

2 个答案:

答案 0 :(得分:1)

可能您忘记设置此参数:

tableView.delegate = self
tableView.datasource = self

如评论中所述:

如下所示纠正您的类声明:

class myClass: SidePanelViewController , UITableViewDataSource, UITableViewDelegate { .. } 

答案 1 :(得分:0)

尝试交叉检查以下内容,因为您已在捆绑中明确添加了xib,因为您的类名和xib名称不同

交叉检查1

您在MenuTableViewCell窗口

中提到了自定义类Identity Inspector

enter image description here

交叉检查2

您已在Attributes Inspector窗口中提及小区标识符 enter image description here