Дважды нажмите на некоторые конкретные подпредставления с подклассом UIGestureRecognizer? - PullRequest
1 голос
/ 28 ноября 2010

Я следовал за демонстрацией сеанса 121 WWDC 2010 (Advanced Gesture Recognition), чтобы найти способ иметь все поведения (вращать, масштабировать, переводить) в другом классе (TransformGestureReconizer), и все идет хорошо, и делаю это для подпредставлений:

- (void)viewDidLoad {
    [super viewDidLoad];
    [self.view addSubview:baseView];
    subView1.userInteractionEnabled = YES;
    [self addTransformGestureToView:subView1];
}

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

Так что, если я добавлю:

- (void)handleDoubleTap:(UIGestureRecognizer *)gestureRecognizer

Я не могу выбрать, какое представление доставляет мое действие (например, изменение изображения на нем). Если я добавлю на основной вид:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event

, я могу справиться только с двойным касанием на основном виде, ноне для подпредставлений и может сделать это только на TransformGestureReconizer.h, но затем не выбрать представление коснулся (я думаю, потому что подкласс UIGestureRecognizer).

1 Ответ

1 голос
/ 28 февраля 2011

Я нашел решение:

    UITapGestureRecognizer *doubleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleDoubleTap:)];
[doubleTap setNumberOfTapsRequired:2];
[self addTransformGestureToView:subView1];
[self.subView1 addGestureRecognizer:doubleTap];
[doubleTap release];
...