SwipeCellKit — сдвигаемая ячейка для UITableViewCell/UICollectionViewCell, как в оригинальном почтовом приложении Apple. Поддерживает левые и правые свайпы, кнопки с изображениями, тактильный отклик, кастомные анимации, темный режим и т.п.
Пример использования:
Устанавливаем свойство delegate
для SwipeTableViewCell
:
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "Cell") as! SwipeTableViewCell
cell.delegate = self
return cell
}
Применяем протокол SwipeTableViewCellDelegate
:
func tableView(_ tableView: UITableView, editActionsForRowAt indexPath: IndexPath, for orientation: SwipeActionsOrientation) -> [SwipeAction]? {
guard orientation == .right else { return nil }
let deleteAction = SwipeAction(style: .destructive, title: "Delete") { action, indexPath in
// handle action by updating model with deletion
}
// customize the action appearance
deleteAction.image = UIImage(named: "delete")
return [deleteAction]
}