垂直可滚动CCLayerColor问题

时间:2012-03-22 20:04:53

标签: iphone objective-c cocos2d-iphone

我正在尝试用cocos2d做一个可滚动的图层

我想要的是图层从上到下滚动但是无论我进入场景时我做什么,图层都位于(0,0)aka..bottom

我尝试了几件事,但似乎没有任何工作

-(id) init
{
    if( (self=[super init] )) {
        self.isTouchEnabled = YES;
        isDragging = NO;
        yvel = 0.0f;
        contentHeight = 1000.0f;

        scrollLayer = [CCLayerColor layerWithColor:ccc4(200, 200, 200, 240)];
        scrollLayer.contentSize = CGSizeMake(320,contentHeight);
        scrollLayer.anchorPoint = ccp(0,1);
        scrollLayer.position = ccp(0, 480);
        [self addChild: scrollLayer];


        CCLabelTTF *label = [CCLabelTTF labelWithString:[NSString stringWithFormat:@"test label"]
                                                   fontName:@"Marker Felt"
                                                   fontSize:24];

        label.position=ccp(100, 100);

        [scrollLayer addChild:label];


        [self scheduleUpdate];
    }
    return self;
}

其他方法是更新并触及处理程序,因此问题不存在

使用此代码...不应该使用屏幕左上角的内容进行初始化吗?

1 个答案:

答案 0 :(得分:0)

经过几个小时的痛苦,我终于解决了问题......但我仍然不知道为什么会这样做

而不是scrollLayer.position = ccp(0, 480);我替换为scrollLayer.position =ccp(0,-contentHeight);并删除了scrollLayer.anchorPoint = ccp(0,1);因为它没有做任何事情

我完全不知道它为什么会起作用

有人可以解释一下吗?