注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

vs-yanguo的博客

 
 
 

日志

 
 
 
 

[iphone-cocos2d]关于Loading  

2010-10-09 11:11:43|  分类: cocos2d |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

找了些关于loading的资源,贴出来慢慢看。


(id) init

{

    self = [super init];

    if ( self )

    {   

        // Add the Label (in cocos2D universe)

        BitmapFontAtlas *label = [BitmapFontAtlas 

bitmapFontAtlasWithString: @"Initializing Game" 

 fntFile: @"comic_atlas.fnt" 

 alignment: UITextAlignmentCenter];

        label.position = ccp(240, 160);

        label.opacity = 0;

        [self addChild: label z: 0 tag: kInitializingLabel];

        // Add the UIActivityIndicatorView (in UIKit universe)

        self.activityIndicatorView = [[[UIActivityIndicatorView alloc] 

initWithActivityIndicatorStyle: 

UIActivityIndicatorViewStyleWhiteLarge] autorelease];

        activityIndicatorView.center = ccp(190,240);

        [activityIndicatorView startAnimating];

        [[self battleView] addSubview: activityIndicatorView];

        [self schedule: @selector(loadingInit)];

        

        // At this point, the cocos2d rendering is fine.

    }

    

    return self;

}


- (void) loadingInit

{

    [self unschedule: @selector(loadingInit)];

    // Fade in nicely

    BitmapFontAtlas *label = (BitmapFontAtlas*)[self getChildByTag: kInitializingLabel];

    [label runAction: [FadeIn actionWithDuration: .25]];

    [self schedule: @selector(loadingStep0) interval: .25];

}


- (void) loadingStep0

{

    [self unschedule: @selector(loadingStep0)];

    

    // Add you own code to load texture, sounds etc...

    // The cocos2D thread will be waiting (since it's the same as 

the main thread) but the UIKit thread will keep running in parallel

    // Can do multiple steps or just one

    [self schedule: @selector(loadingStep1) interval: .5];

}


- (void) loadingStep1

{

    [self unschedule: @selector(loadingStep1)];

    // Add you own code to load texture, sounds etc...

    [self schedule: @selector(loadingDone) interval: .1];

}


- (void) loadingDone

{

    gameIsReady = YES;

    

    [self.activityIndicatorView removeFromSuperview];

    

    BitmapFontAtlas *label = (BitmapFontAtlas*)[self getChildByTag: kInitializingLabel];

    [label setString: NSLocalizedString(@"Tap to start!", nil)];

    

    [label runAction: [RepeatForever actionWithAction: 

                       [Sequence actionOne: [EaseInOut actionWithAction: 

[MoveTo actionWithDuration: .6 position: ccp(210, 160)] rate: 2] 

two: [EaseInOut actionWithAction: 

[MoveTo actionWithDuration: .6 position: ccp(270, 160)] rate: 2]

                        ]       

                       ]

     ];

    

}


- (BOOL)ccTouchesEnded:(NSSet *)touches withEvent:(UIEvent *)event

{

    if ( gameIsReady )

    {

        [self openGame];

    }

    

    return kEventHandled;

}


2。


CGRect texRect = CGRectMake( (barPngWidth/2)*(1-loadPercentage), 0, barPngWidth/2, barPngHeight);
[barAtlasSprite setTextureRect:textRect];
My 
loadPercentage
 var should be comprised between 0 and 1.

You definitely don't have to use an animation nor the setDisplayFrame function.



3。http://stackoverflow.com/questions/1133123/multi-threaded-opengl-programming-in-cocos2d-iphone

  评论这张
 
阅读(352)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018