创建CCScrollView

时间:2014-11-03 22:42:00

标签: ios objective-c cocos2d-iphone

我使用Spritebuilder开发cocos2d应用程序。我想以编程方式创建一个CCScrollView scroll来加载我用SpriteBuilder创建的图层Shop.ccbShop.ccb只是一个包含一些UI元素的CCNode。之前,我曾经只是在Spritebuilder中创建它,但现在我需要通过将scroll添加到父容器中来实现。

我以前是怎么做的: CCScrollView scrollCCNode Shop.ccb

现在,我想以编程方式进行,这就是我遇到的问题。

到目前为止,这是我的代码:

CCNode *shopNode = [CCBReader loadAsScene:@"Shop"];
[shopNode setContentSizeInPoints:(CGSizeMake(320, 1000))];
CCScrollView *scroll = [[CCScrollView alloc]initWithContentNode:shopNode];
[scroll setContentSizeInPoints:(CGSizeMake(320.0, 370.0))];
[scroll setHorizontalScrollEnabled:NO];
[scroll setPosition:(CGPointMake(0, 70))];
[scroll setScrollPosition:(CGPointMake(0, 370))];
[[CCDirector sharedDirector].runningScene addChild:scroll];

当我运行程序时,我无法滚动。它不允许我向上或向下滚动,即使未禁用垂直滚动。当我删除[scroll setContentSizeInPoints:(CGSizeMake(320.0, 370.0))];时,它才会让我上下滚动。此外,它的大小不正确。它不限于320x370区域,占据整个屏幕。关于我在这里做错了什么想法?谢谢。

1 个答案:

答案 0 :(得分:1)

尝试在创建之后和设置其属性(位置和内容大小)之前将滚动节点添加到runningScene。