Не удается удалить строку из UITableView (кнопка удаления никогда не появляется)

#ios #uitableview #xcode4.2

#iOS #uitableview #xcode4.2

Вопрос:

Я пытаюсь удалить строку, используя Xcode 4.2 и раскадровку. Таблица вложена в UINavigationController вложена в UITabBarController .

Мой UITableViewDelegate класс реализует следующий код:

 - (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath {
    UITableViewCellEditingStyle result = UITableViewCellEditingStyleNone;

    if ([tableView isEqual:self.tableView]==YES) {
        result = UITableViewCellEditingStyleDelete;
        NSLog(@"hi");
    }

    return resu<
}
  

и когда я провожу пальцем по строке, я вижу "hi" сообщение в журнале, но строка никогда не получает кнопку «Удалить». Просматривая источники, подобные http://www.raywenderlich.com/5138/beginning-storyboards-in-ios-5-part-1 , мой

 - (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
    NSLog(@"hi2");
} 
  

метод никогда не вызывается.

Спасибо!

Ответ №1:

Проверьте, - (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath возвращает YES ли метод соответствующие пути к индексам.

Комментарии:

1. Спасибо. Это было оно. Всегда кажется, что не хватает одной маленькой детали. 🙂