2011年6月22日 星期三

cocos2D 上的 ScrollView

資料來源

這位作者 givp ,有整理了一個簡單好用的類別.
CCScrollLayer 是一個CCLayer的子類別.
可以將一群CCLayer加入到CCScrollLayer內,

CCLayer 的內容可以附加Image , Label , Menu 等..

然後再將CCScrollLayer加到scene上.
如此便可方便的呈現出ScrollView效果

使用的方法很簡單.
1.將CCScrollLayer類別的所有檔案加到專案中
2.在scene中import CCScrollLayer.h
3.在scene的init時,設定每一個layer , 再將這群layers加到CCScrollLayer中

範例如下:



        CGSize size = [[CCDirector sharedDirector] winSize];
        CCLayer *pageOne = [[CCLayer alloc] init];
        CCLabelTTF *ll1 = [CCLabelTTF labelWithString:@"Page 1" fontName:@"Arial Rounded MT Bold" fontSize:44];
        ll1.positionccp( size.width /2 , size.height/2 );
        [pageOne addChild:ll1];
        
        CCLayer *pageTwo = [[CCLayer alloc] init];
        CCLabelTTF *ll2 = [CCLabelTTF labelWithString:@"Page 2" fontName:@"Arial Rounded MT Bold" fontSize:44];
        ll2.positionccp( size.width /2 , size.height/2 );
        [pageTwo addChild:ll2];
        
        CCLayer *pageThree = [[CCLayer alloc] init];
        CCLabelTTF *ll3 = [CCLabelTTF labelWithString:@"Page 3" fontName:@"Arial Rounded MT Bold" fontSize:44];
        ll3.positionccp( size.width /2 , size.height/2 );
        [pageThree addChild:ll3];
        
        CCScrollLayer *scroller = [[CCScrollLayer alloc] initWithLayers:[NSMutableArray arrayWithObjects: pageOne,pageTwo,pageThree,nil] widthOffset: 230];
        
        // finally add the scroller to your scene
        [self addChild:scroller];

沒有留言:

張貼留言