Если бы это был я, я бы назначил scrollView в качестве делегата вида сверху. Это, конечно, потребовало бы, чтобы вид сверху представлял собой пользовательский подкласс UIView
, поэтому вы можете установить
id delegate;
и
@property (nonatomic, assign) id delegate;
в заголовочном файле. Затем вы должны установить scrollView в качестве делегата с чем-то вроде
[topView setDelegate:scrollView];
После этого вы можете отправлять сообщения (в вашем случае, сенсорные события) в scrollView, когда они необходимы. Если, например, вы хотите отправить все события touchBegan, вы получите следующее:
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
[self.delegate touchesBegan:touches withEvent:event];
}
Конечно, если вы хотите, чтобы только определенные события передавались, вы должны настроить параметры в методах, чтобы указать, когда вызывать [self.delegate ....]
или [super ....]
. Последний будет выполнять действие для представления, а не в scrollView. Я надеюсь, что это поможет