gpt4 book ai didi

ios - 使用 SWIFT 在 Tableview 中设置自定义单元格

转载 作者:行者123 更新时间:2023-11-29 02:22:01 26 4
gpt4 key购买 nike

我正在尝试创建一个自定义单元格,它将仅应用于一个部分中的一个单元格。

因此创建一个名为 buttonsTableViewCell 的自定义 cass,它几乎是空的,只有一个名为 weightLabel() 的标签,代码如下:

class buttonsTableViewCell: UITableViewCell {

@IBOutlet weak var weightLabel: 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
}

}

在 Main.storyboard 上,我连接了所有内容:

Setting the custom class Connect the label to the class Setting the identifier

现在这就是我在 viewcontroller 类中尝试做的事情,它控制具有单元格的 Tableview。

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

var cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as UITableViewCell
cell.textLabel?.text = "Testing"

if indexPath.row == 1 { // So it only changes this cell
cell = tableView.dequeueReusableCellWithIdentifier("buttonsCell", forIndexPath: indexPath) as buttonsTableViewCell

cell.weightLabel?.text = "Weight" // ERROR UITableViewCell does not have a member named 'weightLabel'
}

return cell

}

我做错了什么?预先感谢您的帮助。

最佳答案

Swift 是具有类型推断功能的静态类型语言。因此,当您第一次在 if 条件之外为 cell 赋值时,cell 变量的类型将设置为普通的 UITableViewCell
只需使用不同的变量名称,例如

if indexPath.row == 1 { 
var buttonCell = tableView.dequeueReusableCellWithIdentifier("buttonsCell", forIndexPath: indexPath) as buttonsTableViewCell

buttonCell.weightLabel?.text = "Weight"
return buttonCell
}

var cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as UITableViewCell
cell.textLabel?.text = "Testing"

return cell

关于ios - 使用 SWIFT 在 Tableview 中设置自定义单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28029972/

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