Я не уверен, что правильно понял, документация немного смущает, но, учитывая следующий код в теле делегата UITableView:
func tableView(_ tableView: UITableView, canEditRowAt indexPath: IndexPath) -> Bool {
return true
}
func tableView(_ tableView: UITableView, editActionsForRowAt indexPath: IndexPath) -> [UITableViewRowAction]? {
let action = UITableViewRowAction(style: UITableViewRowAction.Style.normal,
title: "Do Something!") { (_, indexPath) in
self.doSomething()
}
return [action]
}
вызов метода doSomething()
выполняется в симуляторе по завершении действия смахивания влево рядом с нажатием на "Do Something!" кнопка.
Я не хочу, чтобы звонок был выполнен дважды. Что-то не так с моей конфигурацией или я не понял цели UITableViewRowAction
?
TLDR: я хочу, чтобы обратный вызов действия смахивания срабатывал только при нажатии на отображаемую кнопку.
Спасибо.