Вы можете разрешить касания в поле вокруг спрайта.Например, если касание находится в пределах 10 пикселей от спрайта, обрабатывайте его так, как если бы оно касалось спрайта.
Один из способов сделать это - расширить прямоугольник спрайта перед вызовом CGRectContainsPoint
.Следующий код расширит прямоугольник на 10 для x и y:
CGRect expanded = CGRectInset(spriteRect, -10.0, -10.0);
Еще один способ сделать это - создать прямоугольник вокруг касания и использовать CGRectIntersectsRect
, чтобы проверить, перекрывается ли прямоугольник касания сспрайт.