如何解决表格视图项未显示
我是iOS开发的新手。
我正在尝试使用UITableView
在我的应用程序中显示项目列表,但这些项目没有显示:
我的视图控制器:
class HistoryView: UIViewController,UITableViewDataSource,UITableViewDelegate {
@IBOutlet weak var tableView: UITableView!
let cellReuseIdentifier = "cell"
@IBOutlet weak var noDataLabel: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
tableView.register(HistoryTableViewCell.self,forCellReuseIdentifier: "historyCell")
tableView.delegate = self
tableView.dataSource = self
self.noDataLabel.isHidden=true
}
func numberOfSections(in tableView: UITableView) -> Int {
return 1
}
func tableView(_ tableView: UITableView,numberOfRowsInSection section: Int) -> Int {
return 10
}
func tableView(_ tableView: UITableView,cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "historyCell") as! HistoryTableViewCell
cell.nickname?.text = "name"
return cell
}
}
我的表格视图单元格:
class HistoryTableViewCell: UITableViewCell {
@IBOutlet weak var nickname: UILabel!
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}
override func setSelected(_ selected: Bool,animated: Bool) {
super.setSelected(selected,animated: animated)
// Configure the view for the selected state
}
}
有什么建议吗?
解决方法
条件1:
如果您使用的是原型电池,则删除该行
tableView.register(HistoryTableViewCell.self,forCellReuseIdentifier:"historyCell")
并在情节提要中提供单元格标识符
条件2: 如果您使用的是xib文件,则按如下所示注册单元:-
tableView.register(UINib(nibName: "HistoryTableViewCell",bundle: nil),forCellReuseIdentifier: "historyCell")
,
您需要像这样注册单元格
tb.register(UINib(nibName: "HistoryTableViewCell",forCellReuseIdentifier: "historyCell")
我看到了@IBOutlet weak var nickname: UILabel!
在class HistoryTableViewCell
中。
对于表格单元格
dequeueReusableCell
和register
应该成对调用
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。