У меня есть NSObject
, который создает UIImageView
. Я добавляю распознаватели жестов к UIImageView
, но цель не установлена в самом классе. Я хотел бы знать, как это сделать.Установка цели как NSObject
//inside the init method of the NSObject:
UITapGestureRecognizer* tapRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTap:)];
tapRecognizer.numberOfTapsRequired = 2;
[theImage addGestureRecognizer:tapRecognizer];
//this method is directly beneath the init method of the NSObject, I want this
//to be called when the image is double tapped
- (void)handleTap:(UITapGestureRecognizer*)recognizer
{
}
Так что же мне нужно установить initWithTarget: to? это не self
, потому что это приводит к сбою приложения, что приводит к плохой ошибке доступа
'NSObject' не является' UIResponder', поэтому он не может обрабатывать 'UIEvent'. Так же, как в документах UIResponder, «Класс UIResponder определяет интерфейс для объектов, которые отвечают и обрабатывают события» –