Terry Torres
Terry Torres

Reputation: 138

ios - UITableView delete button won't react to gesture

I have a custom table view cell that has a toggle button on the left side.

When the tableview's isEditing property is set to true, the delete editing option appears properly, but when it's tapped, nothing happens.

enter image description here

The stranger thing is, when I tap and hold, and then drag to one side away from the button, and THEN lift, the cell finally slides over. Which isn't how it's supposed to work at all.

enter image description here

Even when I remove connections to the toggle button from the storyboard and the subclass, it still behaves this way.

Why is it doing this?

Upvotes: 2

Views: 805

Answers (2)

Priyamal
Priyamal

Reputation: 2989

you need to add following methods in your table view controller

func tableView(_ tableView: UITableView, canEditRowAt indexPath: IndexPath) -> Bool {
    return true
}

func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCellEditingStyle, forRowAt indexPath: IndexPath) {
    if (editingStyle == UITableViewCellEditingStyle.delete) {
     //remove element from your array providing index.row
    tableView.deleteRowsAtIndexPaths([indexPath], withRowAnimation: .Fade)
     )
    }
} 

Upvotes: 1

pellucidcoder
pellucidcoder

Reputation: 127

First of all, correct me if I'm wrong, but I think these are two different problems.

1.Nothing happens when the "delete editing" button is tapped. I would check if the "delete editing" button properly connected to the class file with an IBAction.

2.The cell slide behavior is not what is desired. I would check to see if the gesture you're recognizing is a tap and not a left swipe.

Hope that helps.

Upvotes: 1

Related Questions