CCScrollView не получает прикосновения (Cocos2d V 3.0)

Я пытаюсь добавить CCScrollView с пейджингом (cocos2d- iphone v3.0). Но это не работает. Он не вызывает никаких методов делегата (например, scrollViewDidScroll:).

CCNode *cards = [CCNode node];
for (int i = 0 ; i < 3; i++) {
    CCLabelTTF *label = [CCLabelTTF labelWithString:[NSString stringWithFormat:@"label %d", i] fontName:@"Arial" fontSize:24];
    label.color = [CCColor redColor];
    label.position = ccp(winSize.width * i + winSize.width * 0.5 , winSize.height * 0.5);
    [cards addChild:label];
}
self.scrollView = [[CCScrollView alloc] initWithContentNode:cards];
self.scrollView.contentSizeType = CCSizeTypeNormalized;
self.scrollView.contentSize = CGSizeMake(3, 1);
self.scrollView.pagingEnabled = YES;
self.scrollView.delegate = self;
self.scrollView.position = CGPointZero;
self.scrollView.anchorPoint = CGPointZero;
[self addChild:self.scrollView];

1 ответ

Вам действительно нужно установить contentSize из contentNode из scrollView в отличие от contentSize из scrollView,

В CCScrollView.h

@property (nonatomic,strong) CCNode* contentNode;

Таким образом, вы должны заменить эту часть кода:

self.scrollView.contentSizeType = CCSizeTypeNormalized;
self.scrollView.contentSize = CGSizeMake(3, 1);

С этим:

self.scrollView.contentNode.contentSizeType = CCSizeTypeNormalized;
self.scrollView.contentNode.contentSize = CGSizeMake(3, 1);
Другие вопросы по тегам