CCScrollLayer在cocos2d中发布

时间:2012-04-02 14:40:04

标签: objective-c cocos2d-iphone ccscrolllayer

我遇到此问题尝试使用cocos2d CCScrollLayer

我已将CCScrollLayer类添加到我的场景中,并遇到以下3个问题: 1.它没有得到触动 2.将背景(风景)放在一起,像这样:page1就位,但是page2在半屏的顶部,所以我看到半页1半页2。 3.显示在我现在的哪个页面上的buttom中的溺爱 - 我可以消除它们,还是将它们移到其他地方?

非常感谢。

代码:

CGSize screenSize = [CCDirector sharedDirector].winSize;
        // PAGE 1
        CCLayer *page1 = [[CCLayer alloc] init];
        BACK.position=ccp(screenSize.width/2 ,screenSize.height/2);
         [page1 addChild:BACK];
        // PAGE 2
        CCLayer *page2 = [[CCLayer alloc] init];
        BACK1.position=ccp(screenSize.width/2,screenSize.height/2);
        [page2 addChild:BACK1];
        // PAGE 3
        CCLayer *page3 = [[CCLayer alloc] init];
        BACK1.position=ccp(screenSize.width/2,screenSize.height/2);
        [page3 addChild:BACK2];

        CCScrollLayer *scroller = [[CCScrollLayer alloc] initWithLayers:[NSMutableArray arrayWithObjects: page1,page2, nil] widthOffset: 230];

        // finally add the scroller to your scene
        [self addChild:scroller];

和类的来源:

2 个答案:

答案 0 :(得分:0)

回答你的三个问题:

  1. 在CCScrollLayer的ccTouchBegan:(UITouch *)touch withEvent:(UIEvent *)event中放置一个断点,以确保它没有接收到触摸。
  2. CCScrollLayer故意重叠图层。如果您一次只想在屏幕上显示一个图层,请增加scrollWidth_属性的CCScrollLayer值。否则,您将不得不缩小背景图像,使它们不重叠。
  3. 我建议编辑CCScrollLayer类以删除或移动点。

答案 1 :(得分:0)

如果您使用cocos2d v.1.1b2,请确保您拥有最新版本的CCTouchDispatcher.m文件。 如果没有,请将您的文件更新为: https://github.com/cocos2d/cocos2d-iphone/blob/develop/cocos2d/Platforms/iOS/CCTouchDispatcher.m 和相应的* .h文件 https://github.com/cocos2d/cocos2d-iphone/blob/develop/cocos2d/Platforms/iOS/CCTouchDispatcher.h