Я создал подкласс UILabel и добавил 2 свойства, которые выглядят следующим образом:
@property (nonatomic, assign) SEL action;
@property (nonatomic, assign) id target;
Затем я реализовал метод начала прикосновений UIView следующим образом:
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
if ([target respondsToSelector:@selector(action)]) {
[target performSelector:@selector(action) onThread:[NSThread mainThread] withObject:nil waitUntilDone:NO];
}
}
внутри класса, содержащего подкласс UILabel, я устанавливаю цель и действие следующим образом:
label.target = self;
labek.action = @selector(myMethod);
label.userInteractionEnabled = YES;
Класс, включающий метку, действительно имеет метод myMethod, поэтому он должен на него реагировать. Есть идеи, почему бы и нет?
Благодарность!