表格视图单元格未出现
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
【讨论】:
以上是关于表格视图单元格未出现的主要内容,如果未能解决你的问题,请参考以下文章