Как я могу определить, когда пользователь пролистал редактируемую UITableViewCell? - PullRequest
2 голосов
/ 01 сентября 2011

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

Ответы [ 5 ]

4 голосов
/ 01 сентября 2011

Да ладно:

Tableview: willBeginEditingRowAtIndexPath:

...

Обсуждение

Этот метод вызывается, когда пользователь проводит по строке горизонтально по строке ; как следствие, табличное представление устанавливает его свойство редактирования в YES (тем самым входя в режим редактирования) и отображает кнопку Удалить строка обозначена indexPath. В этом режиме «проведите, чтобы удалить» табличное представление не отображает вставки, удаления и переупорядочения управления. Этот метод дает делегату возможность настроить Пользовательский интерфейс приложения в режиме редактирования. Когда таблица выходит Режим редактирования (например, пользователь нажимает кнопку Удалить), таблица просмотр звонков tableView:didEndEditingRowAtIndexPath:.

Ссылка

А затем добавьте [[cell viewWithTag:<#View's tag number#>] setHidden:YES] для ваших собственных представлений.

2 голосов
/ 01 сентября 2011

Попробуйте переопределить метод willTransitionToState в своем пользовательском UITableViewCell.В частности, вас будет интересовать состояние UITableViewCellStateShowingDeleteConfirmationMask.

1 голос
/ 01 сентября 2011

Не могли бы вы изменить соответствующие элементы – tableView:willBeginEditingRowAtIndexPath: называется?

0 голосов
/ 01 сентября 2011

Обновите свой пользовательский интерфейс в tableView:willBeginEditingRowAtIndexPath: и восстановите в tableView:didEndEditingRowAtIndexPath:.

0 голосов
/ 01 сентября 2011

Как только пользователь захочет что-то отредактировать в своем tableView, этот метод будет вызываться

- (void)setEditing:(BOOL)editing animated:(BOOL)animated {

if(editing){
     // Entered Edit mode

     // Show the new tableView and reload it.
} 

else {
    // End of edit mode

    // Bring back the tableview and again reload it. 
}


[super setEditing:editing animated:animated];

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