20

Если добавить жест распознаватель в ячейку таблицы под названием cell, например:Должен ли я освободить распознаватель жестов?

UILongPressGestureRecognizer *_longPressRecognizer = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(cellGestureRecognized:)]; 
_longPressRecognizer.allowableMovement = 20; 
_longPressRecognizer.minimumPressDuration = 1.0f; 
[cell addGestureRecognizer:_longPressRecognizer]; 
[_longPressRecognizer release], _longPressRecognizer = nil; 

Нужно ли мне вручную вызвать -removeGestureRecognizer: на эту ячейку в какой-то момент, или делает жест распознаватель удаляются и выпустили для меня, когда ячейка больше не используется?

+0

Следует отметить, что целевое действие по умолчанию не является сильным. http://stackoverflow.com/a/21578346/1418457 – onmyway133

ответ

41

Распознаватели жестов добавляются во внутренний NSMutableArray вида. Этот массив будет выпущен после того, как представление будет освобождено. Таким образом, -removeGestureRecognizer: не нужно вызывать вручную.

+0

Спасибо, большое спасибо. –

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