今天試著在遊戲畫面中追加時間,標記時間過多久,一開始把函數定義
-(void) timer:(ccTime)dt{
CGSize winSize = [CCDirector sharedDirector].winSize;
ti = 0; //這我宣告在interface裡面了,是cctime的type
NSString *string = [NSString stringWithFormat:@"%d", ti];
CCLabelTTF *label = [CCLabelTTF labelWithString:string fontName:@"Helvetica" fontSize:30];
[self addChild:label z:0];
label.position = ccp(winSize.width * 0.7, winSize.height * 0.8);
[label setColor:ccc3(255, 0, 0)];
}
然後放在init方法裡面,看起來沒有出現。
[self schedule:@selector(timer:)];
可是我看到xcode的debug裡面有出現跳動的時間,卻沒在螢幕上看到?放在update方法也是,怎樣才能顯示在螢幕上呢?
目前的進度是,顯示在螢幕上之後會重復貼上。所以我設定了動畫讓數字自動去淡出,大概0.9秒後淡出,然後將init裡面的schedule:呼叫改成:
[self schedule:@selector(timer:) interval:1];
這樣就可以顯示時間了。更改後的timer函數為:
-(void) timer:(ccTime)dt{
CGSize winSize = [CCDirector sharedDirector].winSize;
ti = 0;
NSString *string = [NSString stringWithFormat:@"%d", ti];
CCLabelTTF *label = [CCLabelTTF labelWithString:string fontName:@"Helvetica" fontSize:30];
[self addChild:label z:0];
label.position = ccp(winSize.width * 0.7, winSize.height * 0.8);
[label setColor:ccc3(255, 0, 0)];
CCFadeOut *fade = [CCFadeOut actionWithDuration:0.9];
CCSequence *sequence = [CCSequence actions:fade, nil];
[label runAction:sequence];
}//追加淡出動畫
剩下的就是將時間隨著秒數更新,這還沒完成,今天時間不夠了,先這樣吧。
-(void) timer:(ccTime)dt{
CGSize winSize = [CCDirector sharedDirector].winSize;
ti = 0; //這我宣告在interface裡面了,是cctime的type
NSString *string = [NSString stringWithFormat:@"%d", ti];
CCLabelTTF *label = [CCLabelTTF labelWithString:string fontName:@"Helvetica" fontSize:30];
[self addChild:label z:0];
label.position = ccp(winSize.width * 0.7, winSize.height * 0.8);
[label setColor:ccc3(255, 0, 0)];
}
然後放在init方法裡面,看起來沒有出現。
[self schedule:@selector(timer:)];
可是我看到xcode的debug裡面有出現跳動的時間,卻沒在螢幕上看到?放在update方法也是,怎樣才能顯示在螢幕上呢?
目前的進度是,顯示在螢幕上之後會重復貼上。所以我設定了動畫讓數字自動去淡出,大概0.9秒後淡出,然後將init裡面的schedule:呼叫改成:
[self schedule:@selector(timer:) interval:1];
這樣就可以顯示時間了。更改後的timer函數為:
-(void) timer:(ccTime)dt{
CGSize winSize = [CCDirector sharedDirector].winSize;
ti = 0;
NSString *string = [NSString stringWithFormat:@"%d", ti];
CCLabelTTF *label = [CCLabelTTF labelWithString:string fontName:@"Helvetica" fontSize:30];
[self addChild:label z:0];
label.position = ccp(winSize.width * 0.7, winSize.height * 0.8);
[label setColor:ccc3(255, 0, 0)];
CCFadeOut *fade = [CCFadeOut actionWithDuration:0.9];
CCSequence *sequence = [CCSequence actions:fade, nil];
[label runAction:sequence];
}//追加淡出動畫
剩下的就是將時間隨著秒數更新,這還沒完成,今天時間不夠了,先這樣吧。
留言
張貼留言