Мое решение для моего собственного вопроса, надеюсь, оно кому-нибудь поможет.
На виде спереди послушайте touchesEnded:withEvent
делегата.
Когда этот делегат срабатывает, вы знаете, что пользователь касается вида спереди.
Далее необходимо проверить, касается ли положение пальца особых областей на нижнем виде.
Что делать, это:
1) Преобразовать точку относительно вида снизу:
UITouch *touch = [touches anyObject];
CGPoint touchPointInLowerView = [touch locationInView:self.lowerViewController.view];
BOOL isLowerButtonClicked = [self.lowerViewController isFingerOnYourButton:touchPointInLowerView];
if(isLowerButtonClicked)
{
// lower button clicked
}
2) В нижнем представлении
- (BOOL) isFingerOnYourButton:(CGPoint)point
{
return CGRectContainsPoint(self.aButton.frame, point);
}
вуаля. Таким образом, мы можем обнаружить щелчки в виде снизу, даже если он заблокирован другим интерактивным видом сверху.