2015-01-19 3 views
0

Я пытаюсь обнаружить закрытие кнопки удаления на UITableView. Поэтому я пишу внутри этого.Обнаружение закрытия кнопки удаления (Проведите по удалению) на UITableView

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer 
{ 

} 

Когда я вывожу otherGestureRecognizer, я видел вот это.

(lldb) po otherGestureRecognizer 
<UIGobblerGestureRecognizer: 0x7fbd8c21ccb0; state = Ended; view = <UITableView 0x7fbd89953000>; target= <(action=_handleSwipeDeleteGobbler:, target=<UITableView 0x7fbd89953000>)>> 

Мне нужно проверить, как это. Но это не разрешено и нужно использовать UISwipeGestureRecognizer. Могу ли я узнать, как определить, закрывает ли пользователь кнопку Delete в UITableViewCell?

if ([gestureRecognizer isKindOfClass:[UIGobblerGestureRecognizer class]]) 
{  
} 
+0

который удаляет кнопку? проведите пальцем по кнопке удаления? –

+0

Да. Пролистните, чтобы удалить кнопку –

+0

, что вы точно хотите узнать? вы имеете в виду, если я прокручу и снова проведите пальцем по экрану и не использую параметр «Удалить»? –

ответ

3

В вашем UITableView делегата, вы можете использовать tableView:didEndEditingRowAtIndexPath:, чтобы получить уведомление, когда редактирование ячейки заканчивается, который также является состояние, когда кнопка Delete собирается исчезнуть.

+0

lol..Я делаю длинный код. Благодарю. Это полезно. Я замечаю, что он также вызывается, когда появляется кнопка «Удалить». Это правда? –

+0

Я так не думаю. Его следует вызывать только при завершении редактирования. Однако для этого можно использовать 'tableView: willBeginEditingRowAtIndexPath:' или 'tableView: didBeginEditingRowAtIndexPath:'. –