Это тип экрана Делаю:
Так когда UISwitch
изменения состояния он должен изменить метку ON
или OFF
. В моем cellForRowAtIndexPath
я звоню [cell.mainSwitch addTarget:self action:@selector(switchChanged:) forControlEvents:UIControlEventValueChanged];
и switchChanged
выглядит следующим образом:UISwitch в CustomCell не изменяя значения в конкретной indexpath
-(void) switchChanged:(id)sender {
UISwitch* cellNew = (UISwitch*)sender;
if ([cellNew isOn]) {
cell.funcStatus.text = [funcStatusArr objectAtIndex:0];
} else {
cell.funcStatus.text = [funcStatusArr objectAtIndex:1];
}
}
Теперь проблема я столкнулся в том, что она не меняет Label
на конкретной ячейки приклад все переключатели меняют этикетки на 4 (последней), как показано на рисунке ниже.
Как вы можете видеть, первая метка выключена, но она меняет метку последней строки. Любые идеи, почему это происходит или как сообщить функции, которые этот index.row
отправляет запрос.
Похоже, что вы ссылаетесь на последнюю ячейку в ячейке, и приложение правильно обновляет метку, тогда проблема связана с тем, как вы устанавливаете или не устанавливаете значение «cell». –
u должен создать ячейку для текущей indexPath. в вашем случае всегда изменяется только последняя ячейка. –
@ Константин Крыжановский, вы можете показать мне пример, пожалуйста! –