2013年04月18日

[cocos2d]ページのスクロール

ハイスコアの画面。
ランキング画面20130418.PNG

左右にフリックして、LEVEL1 ←→ LEVEL2 ←→ LEVEL3 みたいにスクロールで切り替えたいなーと思って、どう実装するか調べてたら、めっちゃ簡単に出来る方法があった。

cocos2dの拡張ライブラリ、Cocos2d Extensionsなるものをダウンロードして、
その中のCCScrollLayerってやつをプロジェクトに放り込む。


で、使いたいクラスでCCScrollLayer.hをインポートして、
        // ページレイヤーを配列で作成
        NSMutableArray *layerArray = [NSMutableArray array];
        [layerArray addObject:[self viewHighScoreLavel:1]];
        [layerArray addObject:[self viewHighScoreLavel:2]];
        [layerArray addObject:[self viewHighScoreLavel:3]];
        CCScrollLayer *scroller = [[CCScrollLayer alloc] initWithLayers:layerArray widthOffset: 0];
        
        // インジケータ非表示
        scroller.showPagesIndicator = NO;
        
        // レイヤーを表示
        [self addChild:scroller];
これだけでできた。
[self viewHighScoreLavel:1]のメソッドでレイヤーを作成して、戻り値として返してます。 CCScrollLayerの中に、各ページのレイヤーを配列で全部入れると、勝手に上手いことやってくれる。


あと、デフォルトで現在のページ位置を表すインジケーターが表示されるんだけど、
邪魔だったんでshowPagesIndicatorプロパティをNOにしたら消せた。

さすがcocos2d、便利なライブラリがいっぱいあるぜ。
ラベル:cocos2d
posted by ryo4071 at 00:55| Comment(0) | 日記 | このブログの読者になる | 更新情報をチェックする
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。