Как отключить кнопку удаления для конкретной строки, когда мы используем метод делегата табличного представления commitEditingStyle в Iphone SDK? - PullRequest
1 голос
/ 07 июня 2010

Здесь мне нужна помощь от вашей стороны, чтобы я использовал метод делегата представления таблицы commitEditing sytle, чтобы получить кнопку удаления для каждой ячейки, когда мы проводим. Но моя проблема здесь в том, что я не хочу кнопку удаления для первой строки в представлении таблицы и смахивание не должно работать, и я не знаю, как это реализовать.

Любая помощь будет высоко ценится.

Спасибо,

Мониш.

Ответы [ 2 ]

4 голосов
/ 19 мая 2014
- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath 
{
      if(condition check)
          return UITableViewCellEditingStyleDelete;

    return UITableViewCellEditingStyleNone;
}


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

     }
}
4 голосов
/ 07 июня 2010

UITableViewCell имеет стиль удаления по умолчанию. Чтобы изменить это, вам нужно внедрить метод tableView:editingStyleForRowAtIndexPath: в ваш делегат табличного представления. Вернуть UITableViewCellEditingStyleNone для 1-й строки и UITableViewCellEditingStyleDelete для других строк.

Редактировать: Извините за неполный ответ. Вам также необходимо реализовать метод tableView:canEditRowAtIndexPath: (что-то подобное):

- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath{
    return indexPath.row > 0;
}

Надеюсь, это сработает

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...