2014-09-04 3 views
-1

У меня есть таблица, где gesturerecognizer должен быть добавлен к метке заголовка таблицы. Это делается с помощью следующего кода:UITapGestureRecognizer is nil

UITapGestureRecognizer *singleFingerTap = 
    [[UITapGestureRecognizer alloc] initWithTarget:self 
              action:@selector(handleTableheaderTap:)]; 
    [headerView addGestureRecognizer:singleFingerTap]; 
    singleFingerTap.delegate = self; 

Селектор-метод выглядит следующим образом:

- (void)handleTableheaderTap:(UITapGestureRecognizer *)recognizer 

К сожалению, распознаватель равна нулю, когда вызывается метод. Что мне нужно изменить, так что распознаватель уже находится в handletTableheaderTap not nil?

Спасибо!

+1

Как именно вы определить, что "распознаватель равна нулю, когда вызывается метод"? – Anna

ответ

0

Вы должны сохранить экземпляр в атрибуте контроллера. Объявление частной собственности, чтобы сохранить его.

Пример:

@interface MyViewController() 
@property (nonatomic, strong) UITapGestureRecognizer *singleFingerTap 
@end 

...

self.singleFingerTap = [[UITapGestureRecognizer alloc] initWithTarget:self 
              action:@selector(handleTableheaderTap:)]; 
[headerView addGestureRecognizer:singleFingerTap]; 
    singleFingerTap.delegate = self; 
+0

Комментарий для -1? –