Ios 自定义单元格类的UITableView显示正确的行数,但全部为空
我似乎不明白为什么我的表格中的自定义单元格都是空白的。我已经搜索和尝试了一段时间的建议,但无法找到它。在这一点上,我觉得我错过了一些明显的东西 这是我的,斯威夫特Ios 自定义单元格类的UITableView显示正确的行数,但全部为空,ios,swift,xcode,uitableview,Ios,Swift,Xcode,Uitableview,我似乎不明白为什么我的表格中的自定义单元格都是空白的。我已经搜索和尝试了一段时间的建议,但无法找到它。在这一点上,我觉得我错过了一些明显的东西 这是我的,斯威夫特 import UIKit struct Contact { var name:String var title:String var phone:String } class ContactTableViewCell: UITableViewCell { @IBOutlet weak var
import UIKit
struct Contact {
var name:String
var title:String
var phone:String
}
class ContactTableViewCell: UITableViewCell {
@IBOutlet weak var contactName: UILabel!
@IBOutlet weak var contactTitle: UILabel!
@IBOutlet weak var contactPhone: UILabel!
}
class Contacts:UIViewController, UITableViewDelegate, UITableViewDataSource {
@IBOutlet weak var contactTable: UITableView!
var contactData = [
Contact(name: "Main Office", title: "Title", phone: "Phone Here"),
Contact(name: "Joe Bloggs", title: "Title Here", phone: "Phone Number"),
Contact(name: "John Smith", title: "Another Title", phone: "Another Phone")
]
override func viewDidLoad() {
super.viewDidLoad()
contactTable.register(ContactTableViewCell.self, forCellReuseIdentifier: "cellId")
contactTable.delegate = self
contactTable.dataSource = self
}
func tableView(_ contactTable: UITableView, numberOfRowsInSection section: Int) -> Int {
return self.contactData.count
}
func numberOfSectionsInTableView(contactTable: UITableView) -> Int {
return 1
}
func tableView(_ contactTable: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let contactCell = contactTable.dequeueReusableCell(withIdentifier: "cellId", for: indexPath) as! ContactTableViewCell
let contact = contactData[indexPath.row]
contactCell.contactName?.text = contact.name
contactCell.contactTitle?.text = contact.title
contactCell.contactPhone?.text = contact.phone
return contactCell
}
}
我的IBOutlets肯定是链接的,并且该单元格链接到ContactTableViewClass
这就是我手机的样子
如有任何帮助,我们将不胜感激,谢谢您评论此行
contactTable.register(ContactTableViewCell.self, forCellReuseIdentifier: "cellId")
并将标识符cellId设置为IB中的单元,当您创建原型单元时,不要注册它,因为注册会自动进行
在您的情况下,所有插座均为零
// try contactCell.contactName.text and it' ll crash
contactCell.contactName?.text = contact.name
contactCell.contactTitle?.text = contact.title
contactCell.contactPhone?.text = contact.phone
当你用一个类覆盖IB注册时,这个类的布局是在IB中创建的,作为ContactTableViewCell.self,当你用它的布局以编程方式完全创建这个类时好吧,该死,这毕竟很简单。非常感谢。我真不敢相信所有的搜索都没有结果