Нужно, чтобы добавленная кнопка в пользовательской ячейке в IOS работала как дополнительная кнопка
В Swift я создал собственную ячейку с 3 метками, в которую я добавил кнопку или введите UIButton. Кнопка отображается в каждом ряду таблицы. Когда я нажимаю на кнопку, я хочу сохранить indexPath строки, в которой была нажата кнопка, чтобы я мог заменить метки другим текстом. Мне непонятно, как я мог поступить. Я хотел бы вызвать метод кнопки аксессуара (accessoryButtonTappedForRowWithIndexPath), если это возможно.
Спасибо за любые рекомендации.
2 ответа
Единственное, что вы можете сделать, это в cellForRowAtIndexPath, установить тег UIButton для этой ячейки равным indexPath.row. Когда кнопка нажата, она может вызвать
- (void) accessoryButtonTapped: (UIButton *) sender{
int rowNum = sender.tag;
}
Итак, теперь у вас есть rowNum кнопки, которая была нажата. Не уверен, что вы хотите сделать с этим, хотя...
Я думаю, что вы в значительной степени ответили на свой вопрос, но хитрость заключается в том, чтобы установить кнопку в качестве вспомогательного вида. Для этого дополнительного вида используйте селектор; например didClickAccessoryView
а потом в конце концов позвонить accessoryButtonTappedForRowWithIndexPath
оттуда.
Вот реализация target-c для того же: