gpt4 book ai didi

ios - 带有自定义单元格类的 UITableView 显示正确的行数但全部为空白

转载 作者:行者123 更新时间:2023-11-28 13:42:59 28 4
gpt4 key购买 nike

我似乎无法弄清楚为什么我的自定义单元格表格中的单元格都是空白的。我已经搜索并尝试了一段时间的建议,但无法弄清楚。在这一点上,我觉得我错过了一些明显的东西

这是我的.swift

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 肯定是链接的,cell 链接到 ContactTableViewClass

enter image description here

这是我的手机的样子

enter image description here

非常感谢任何帮助,谢谢

最佳答案

注释掉这一行

contactTable.register(ContactTableViewCell.self, forCellReuseIdentifier: "cellId")

并将标识符cellId设置为IB中的cell,当你创建一个原型(prototype)cell时,不要注册它,因为注册会自动发生

在你的例子中,所有网点都是零

// try contactCell.contactName.text and it' ll crash
contactCell.contactName?.text = contact.name
contactCell.contactTitle?.text = contact.title
contactCell.contactPhone?.text = contact.phone

当您使用布局在 IB 中创建为 ContactTableViewCell.self 的类覆盖 IB 注册时,就是您以编程方式完全创建具有其布局的类时

关于ios - 带有自定义单元格类的 UITableView 显示正确的行数但全部为空白,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55786072/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com