我制作了一个带有 UISwitch 的自定义单元格。
自定义单元类具有以下属性:
@property (nonatomic, assign) BOOL boolValue;
单元初始化的重要部分是:
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self) {
UISwitch *boolSwitch = [[UISwitch alloc] init];
boolSwitch.on = self.boolValue;
//self.boolValue = boolSwithch.on /** tried as well **/
[boolSwitch addTarget:self action:@selector(switched:) forControlEvents:UIControlEventValueChanged];
self.accessoryView = boolSwitch;
}
return self;
和 switch: 方法:
- (void)switched:(id)boolSwitch {
self.boolValue = ((UISwitch *)boolSwitch).on;
}
现在这一切都很好,我可以boolValue
从 tableview 代表中获取没有问题,除非我说在摇动开关后呈现模态视图。当我返回 tableView 时,cell.boolValue
将再次设置为其默认值 (NO)。
尽管开关本身的视觉状态保持正确,但单元格属性却没有。
我认为出队后该属性不会持续存在?