Используйте свойство locationInView:
, чтобы определить, где произошло ваше касание, а затем условно вызвать метод. Вы можете сделать это, настроив CGRect
s, которые соответствуют вашим областям попадания. Затем используйте функцию CGRectContainsPoint()
, чтобы определить, попал ли ответвление в одну из областей попадания.
Ваше действие распознавателя жестов касания может выглядеть примерно так:
- (void)tapGestureRecognized:(UIGestureRecognizer *)recognizer
{
// Specify some CGRects that will be hit areas
CGRect firstHitArea = CGRectMake(10.0f, 10.0f, 44.0f, 44.0f);
CGRect secondHitArea = CGRectMake(64.0f, 10.0f, 44.0f, 44.0f)
// Get the location of the touch in the view's coordinate space
CGPoint touchLocation = [recognizer locationInView:recognizer.view];
if (CGRectContainsPoint(firstHitArea, touchLocation))
{
[self firstMethod];
}
else if (CGRectContainsPoint(secondHitArea, touchLocation))
{
[self secondMethod];
}
}