Подтвердить что ты не робот

Жестов нажатия не распознан на uiimageview

Я добавил два uiimageview s, один на другой subview uiview (imageview1,imageview2). В первом представлении верхняя часть uiimageview скрыта (imageview2), а во втором - нижняя imageview скрыта (imageview1).

Выделение жестов ленты:

UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(oneTap:)];
UITapGestureRecognizer *singleTap1 = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(oneTap:)];

Установите для пользователя uiimageview значение YES для пользователя.

[singleTap setNumberOfTapsRequired:1];
[singleTap1 setNumberOfTapsRequired:1];

//добавление жестов в uiimageview

Добавьте распознаватель жестов и селектор соответственно.

[imageview1 addGestureRecognizer:singleTap];
[imageview2 addGestureRecognizer:singleTap1];

Но мои краны не распознаются.

Может ли кто-нибудь сказать мне, где ошибка?

4b9b3361

Ответ 1

Попробуйте установить setUserInteractionEnabled:YES перед добавлением распознавателя жестов.

[imageview1 setUserInteractionEnabled:YES]
[imageview2 setUserInteractionEnabled:YES]

[imageview1 addGestureRecognizer:singleTap];
[imageview2 addGestureRecognizer:singleTap1];   

Update:

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

[yourparentview bringSubviewToFront:imageview1];
[yourparentview bringSubviewToFront:imageview2];

Ответ 2

UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(oneTap:)];
singleTap.numberOfTapsRequired = 1;
singleTap.numberOfTouchesRequired = 1;
singleTap.delegate = self;
[imageview1 addGestureRecogniser:singleTap];
[singleTap1 release];

imageview1.userInteractionEnabled = YES; //disabled by default