表格视图单元格未出现

Posted

技术标签:

【中文标题】表格视图单元格未出现【英文标题】:table view cell not appearing 【发布时间】:2016-03-17 04:17:06 【问题描述】:

我创建了一个自定义单元格视图,并在故事板中创建了一个默认图像。但由于某种原因,我的单元格没有出现。我应该怎么做才能让我的单元格出现。

import UIKit

class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource 
    @IBOutlet weak var tableView: UITableView!
    override func viewDidLoad() 
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.


func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell 
    if let cell = tableView.dequeueReusableCellWithIdentifier("TableViewCell") as? TableViewCell 
        return cell
    
    else
        return TableViewCell()
    
 
func numberOfSectionsInTableView(tableView: UITableView) -> Int 
    return 1


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

import UIKit

class TableViewCell: UITableViewCell 
    @IBOutlet  weak var mainImg: UIImageView!
    @IBOutlet weak var mainLbl: UILabel!
    override func awakeFromNib() 
        super.awakeFromNib()
        // Initialization code


func configureCell(image: UIImage, text: String)
    mainImg.image = image
    mainLbl.text = "Hello Im Tyree"

【问题讨论】:

【参考方案1】:

你错过了在你的viewDidLoad() 中设置这个:

tableView.dataSource = self
tableView.delegate = self

所以你所有的 tableView 函数代码永远不会被执行。

【讨论】:

【参考方案2】:
    检查委托,数据源已与您的表格视图连接 xib。 func configureCell没有函数调用。

【讨论】:

【参考方案3】:

试试这个代码,你不需要检查带有标识符的单元格是否存在,因为它总是应该的。并在索引路径的行中设置单元格的属性,而不是在自定义子类中。您还需要在视图中设置委托和数据源并加载

viewDidLoad() 
tableView.dataSource = self
tableView.delegate = self


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

    cell.mainImg.image = image
    mainLbl.text = "Hello im tryee"

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


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

子类应该是

class TableViewCell: UITableViewCell 
@IBOutlet  weak var mainImg: UIImageView!
@IBOutlet weak var mainLbl: UILabel!
override func awakeFromNib() 
    super.awakeFromNib()
    // Initialization code

【讨论】:

以上是关于表格视图单元格未出现的主要内容,如果未能解决你的问题,请参考以下文章

我的自定义单元格未显示在我的表格视图中

表格视图中的自定义单元格未显示?

自定义表格单元格未调整大小以适合内容视图

表格视图单元格未显示在情节提要中

表格视图单元格未正确更新

单元格未在表格视图中正确显示