我有一个单元格和相关模型。 该单元格有一个选择按钮,点击我正在取消/选择的按钮。 我必须在单元格中保留一个变量(以保持取消/选定状态) 在 cellForRowAtIndexpath 中,我正在配置单元格以及选定的信息。
我的问题:- 因为我必须在单元格中维护一个变量,所以我的想法是在单元格中有一个存储属性 (var isSelected = false)。我尝试了同样的方法,编译器要求我覆盖 isSelected 属性(因为它已经在 UITableViewCell 中声明),当我覆盖时出现错误“无法使用存储的属性'isSelected'覆盖”
谁能告诉我为什么会抛出这个错误 注意 - 我想使用相同的名称 isSelected
任何帮助将不胜感激
最佳答案
在子类中一个属性只能被相同的类型覆盖
因为 isSelected
被声明为读/写
var isSelected: Bool { get set }
你必须通过添加 getter 和 setter 来覆盖它
override var isSelected : Bool {
get { return false }
set { super.isSelected = newValue }
}
或者用一个什么都不做的setter
override var isSelected : Bool {
get { return false }
set {}
}
关于swift - 不能用存储的属性覆盖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58726645/