Multiple touch events on same scene

I have:
‘ScrollViewScene.m’ - paging scrollview initialiser class, passes layers to ScrollViewLayer.m
‘ScrollViewLayer.m’ - creates the scrollview and handles the capabilities of the scrollview

The ScrollViewLayer class handles the touch events to allow sliding through the scroll view.

Right now, all my code is doing is allowing me to scroll but I can’t click on the sprites within the layers of the scrollview. I want to be able to click on the sprites within the layers to replace the scene. I have created another layer to handle the touch Events called ‘LevelSelectLayer.m’ which is further down here

Method within ScrollViewScene.m where layers are created to initialise ScrollViewLayer:

- (id) init {
    if ((self = [super init])) {
                CCSprite *levelBackground = [CCSprite spriteWithFile:@"level selection background.png"];
                [self addChild:levelBackground z:0 tag:1];
                levelBackground.position = CGPointMake(240, 160);

                CCLayer *pageOne = [[CCLayer alloc] init];
                CCSprite *p1Background = [[CCSprite alloc] initWithFile:@"world1.png"];
                p1Background.anchorPoint = ccp(0,0);
                p1Background.position = ccp(0,0);

                //Trying to add new touch layer here to click the layers
                [p1Background addChild:[LevelSelectLayer node]];
                //

                [pageOne addChild:p1Background];

                CCLayer *pageTwo = [[CCLayer alloc] init];
                CCSprite *p2Background = [[CCSprite alloc] initWithFile:@"world2.png"];
                p2Background.anchorPoint = ccp(0,0);
                p2Background.position = ccp(0,0);
                [pageTwo addChild:p2Background];

                CCLayer *pageThree = [[CCLayer alloc] init];
                CCSprite *p3Background = [[CCSprite alloc] initWithFile:@"world3.png"];
                p3Background.anchorPoint = ccp(0,0);
                p3Background.position = ccp(0,0);
                [pageThree addChild:p3Background];

                ScrollViewLayer *backgroundScroll = [[CCScrollLayer alloc] initWithLayers:[NSMutableArray arrayWithObjects:pageOne,pageTwo,pageThree,nil]];
                [self addChild:backgroundScroll];
    }

        return self;
}

LevelSelectLayer.m - wasn’t sure where to put the code to create a new scene.

#import "LevelSelectLayer.h"
#import "GameScene.h"

@implementation LevelSelectLayer
-(id) init
{

        if ( (self = [super init]) )
    {

                // Make sure the layer accepts touches

                [[CCTouchDispatcher sharedDispatcher] addTargetedDelegate:self priority:1 swallowsTouches:YES]; ///change to 0

        }
        return self;
}

 - (BOOL)ccTouchBegan:(UITouch *)touch withEvent:(UIEvent *)event {   

         GameScene * gs = [GameScene node];
         [[CCDirector sharedDirector] replaceScene:(CCScene *)gs];

         return YES;
 }

- (void)ccTouchEnded:(UITouch *)touch withEvent:(UIEvent *)event
{
        GameScene * gs = [GameScene node];
        [[CCDirector sharedDirector] replaceScene:(CCScene *)gs];

}

@end

Any help would be appreciated, I am very new to this.

You can trace into CCTouchDispatcher::touches method, if your LevelSelectLayer::ccTouchBegan isn’t invoked in this method, you can take a look at which flag is uncorrect.