вертикальная прокрутка CCLayerColor проблема - PullRequest
0 голосов
/ 23 марта 2012

Я пытаюсь создать прокручиваемый слой с помощью 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 голосов
/ 23 марта 2012

после нескольких мучительных часов я наконец решил проблему ... но я до сих пор не знаю, почему это работает

вместо scrollLayer.position = ccp(0, 480); я заменил на scrollLayer.position =ccp(0,-contentHeight); и удалил scrollLayer.anchorPoint = ccp(0,1); потому что он ничего не делал

и я понятия не имею, почему это работает

Может кто-нибудь объяснить это?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...