2009-05-15 7 views
-1

У меня есть пользовательская ячейка, которую я хочу удалить, когда нажимается кнопка, расположенная на собственной пользовательской ячейке. Как мне это достичь. кто-то помочь я застрял в этом от многих днейКаков способ удаления пользовательской ячейки из UITableView?

ответ

3

Не знаю, почему вы хотите сделать это вместо того, чтобы использовать стандартное удаление поведения, но ...

Сначала вам нужно знать indexPath для ячейки, на которой эта кнопка нажата. Поэтому вам нужно связать пользовательскую ячейку, чтобы получить действие кнопки, а затем вызвать метод таблицы indexPathForCell с этой ячейкой, чтобы получить индекс.

После этого вы помещаете indexPath внутри NSArray и передаете его методу таблицы deleteRowsAtIndexPaths (а также выберите тип анимации для удаления ячейки). Это также вызовет метод dataSource commitEditingStyle, чтобы вы могли также удалить базовые данные.

Имейте в виду, что, пройдя этот путь, вы обойдете процесс удаления двух шагов, который встроен в таблицу, - где пользователь обычно запрашивает удаление, а затем должен его подтвердить. Поэтому, ради безопасности, вы, вероятно, захотите реализовать что-то подобное.

Также поведение по умолчанию для прокрутки по ячейке таблицы заключается в том, чтобы вызвать кнопку удаления. Вы можете переопределить метод делегата editingStyleForRowAtIndexPath и вернуть UITableViewCellEditingStyleNone для этой ячейки, чтобы он не выполнял функцию по умолчанию.

+0

не могли бы вы разместить образец кода для этого. я до сих пор не понимаю этого –

Смежные вопросы