In your subclass of UIScrollView create two instanse variables:
id delegate;
SEL touchAction;
Then create methods:
-(void)setTarget:(id)target andAction:(SEL)action {
delegate = target;
touchAction = action;
}
-(void)callAction {
if (delegate && [delegate respondsToSelector:touchAction]) {
[delegate performSelector:touchAction];
}
}
In your touchesBegan just call this mehtod:
...
[self callAction];
...
In your UIViewController class create method:
-(void)myScrollViewTouchAction {
[self.navigationController pushViewController:myNewViewController animated:YES];
}
and finally when creating instance of your UIScrollView subclass, set it target and action:
[myScrollView setTarget:self andAction:@selector(myScrollViewTouchAction)];