gpt4 book ai didi

ios - 在静态表格 View 中重用表格单元格 - iOS - Swift

转载 作者:行者123 更新时间:2023-11-29 05:48:50 25 4
gpt4 key购买 nike

我是新人,学习很快

我想在表格 View 中使用静态单元格。我让所有单元格看起来都很相似,所以我想到使用 xib 作为表格单元格,并在我的静态表格 View 中使用它。

我当前面临的问题是,当我尝试访问 xib 中的标签时,会在以下代码中的方法:ConfigureCell 中抛出错误。线程 1: fatal error :隐式解包可选值时意外发现 nil为什么我没有时说“我正在展开可选”

不确定这里需要做什么/请建议。

下面是我的代码:

class NewTableViewController: UITableViewController {

override func viewDidLoad() {
super.viewDidLoad()

self.tableView.register(ReusableTableViewCell.self, forCellReuseIdentifier:"custom")
}

// MARK: - Table view data source

override func numberOfSections(in tableView: UITableView) -> Int {
// #warning Incomplete implementation, return the number of sections
return 1
}

override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
// #warning Incomplete implementation, return the number of rows
return 4
}


override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
guard let cell = tableView.dequeueReusableCell(withIdentifier: "custom", for: indexPath) as? ReusableTableViewCell else {
return UITableViewCell()
}
if indexPath.row == 0 {
cell.configureCell(title: "Name", detail: "hello")
}
if indexPath.row == 2 {
cell.configureCell(title: "Age", detail: "23")
}
if indexPath.row == 3 {
cell.configureCell(title: "Dept", detail: "HR")
}
return cell
}
}

class ReusableTableViewCell: UITableViewCell {

@IBOutlet weak var leftLabel: UILabel!
@IBOutlet weak var rightLabel: 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
}

func configureCell(title: String, detail: String) {

leftLabel.text = title //Error Here: Thread 1: Fatal error: Unexpectedly found nil while implicitly unwrapping an Optional value

rightLabel.text = detail

}

} enter image description here

最佳答案

我找到了解决方案。问题出在这一行:

self.tableView.register(ReusableTableViewCell.self, forCellReuseIdentifier:"custom")

将其替换为以下内容解决了问题:

self.tableView.register(UINib(nibName: "ReusableTableViewCell", bundle: nil), forCellReuseIdentifier: "custom")

关于ios - 在静态表格 View 中重用表格单元格 - iOS - Swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55873506/

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