Patrick L.
Patrick L.

Reputation: 526

UITableView commitEditingStyle only on particular cases

Is it possible to make editable the UITableView by adding the commitEditingStyle method only under certain circumstances ?

I have a controller.m/.h file that is doing stuff for 3 differents storyboards viewcontrollers. I want only 2 of the 3 to be able to commitEditingStyle. I can distinguish them using the self.restorationIdentifier.

Upvotes: 0

Views: 549

Answers (3)

Kamalkumar.E
Kamalkumar.E

Reputation: 254

public override UITableViewCellEditingStyle EditingStyleForRow(UITableView tableView, NSIndexPath indexPath)
        {
             //here we show and hide the delete for particular row
            if (indexPath.Row ==1)
            {
                return UITableViewCellEditingStyle.Delete;
            }
            else {
                return UITableViewCellEditingStyle.None;
            }


        }
        public override void CommitEditingStyle(UITableView tableView, UITableViewCellEditingStyle editingStyle, NSIndexPath indexPath)
        {
            if (editingStyle == UITableViewCellEditingStyle.Delete)
            {
             //here we handle delete button action of the     tableview
            }
        }

Upvotes: 1

Rohit
Rohit

Reputation: 577

you can check tableview tag..

-(UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath 
    {
          if(tableview.tag==1 || tableview.tag==2)
              return UITableViewCellEditingStyleDelete;

        return UITableViewCellEditingStyleNone;
    }


    - (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
    {
        if (editingStyle == UITableViewCellEditingStyleDelete) {
            //here your code

         }
    }

Upvotes: 4

Patrick L.
Patrick L.

Reputation: 526

Well, seems that I had simply to subclass and add the commitEditingStyle on the subclass. Then change the class in the storyboard to the subclass and that's all.

Upvotes: 0

Related Questions