Как создать NSIndexPath для TableView

Мне нужно удалить строку 1 таблицы в функции, которую я определил. Чтобы использовать deleteRowAtIndexPath, вы должны использовать IndexPath с определенным разделом и строкой. Как создать такой индексный путь?

Массив с int {1} как его единственный член сбой; в сообщении NSLog указано, что раздел также должен быть определен.

* Изменить → Код, относящийся к удалению ячейки:

    NSIndexPath *myIP = [[NSIndexPath alloc] indexPathForRow:0 inSection:0];
    NSArray *myArray = [[NSArray alloc] initWithObjects:myIP, nil];
//  [self.tableView beginUpdates];
    [self.tableView deleteRowsAtIndexPaths:myArray withRowAnimation:UITableViewRowAnimationFade];
//  [self.tableView endUpdates];

Ответ 1

Используйте [NSIndexPath indexPathForRow:inSection:], чтобы быстро создать путь указателя.

Изменить: В Swift 3:

let indexPath = IndexPath(row: rowIndex, section: sectionIndex)

Ответ 2

indexPathForRow - метод класса!

Код следует читать:

NSIndexPath *myIP = [NSIndexPath indexPathForRow:0 inSection:0] ;

Ответ 3

Обязательный ответ в Swift: NSIndexPath(forRow:row, inSection: section)

Вы заметите, что NSIndexPath.indexPathForRow(row, inSection: section) недоступен в swift, и вы должны использовать первый метод для создания indexPath.

Ответ 4

Для Swift 3 теперь: IndexPath(row: rowIndex, section: sectionIndex)