2011-03-08 72 views
0

我使用的第一个图像...删除与间隔

[self addChild:self.blue_action]; 
[self schedule:@selector(updateTimer1:) interval:1.0f]; 

通过这条线,我想在任何位置显示的图像和一段时间后,该图像将去除,通过“[自我removeChild之: self.blue_action cleanUp:是];'

-(void)updateTimer1:(id)sender { 
    if(time_1 == 0) { 
     NSLog(@"time value "); 
     [self removeChild:self.blue_action cleanup:YES]; 
     [self schedule: @selector(updateTimer1:) interval:0.10]; 
    } 
    else { 
     --time_1; 
    } 
} 

回答

0

在这种情况下,updateTimer1:(id)sender方法已经安排好了。 要重新安排这一点,你显然必须[self unschedule:_cmd];

不定期这个方法,这是一个很好的做法,每次当你希望它消失时,尽量只让不删除精灵不可见self.blue_action.visible = NO

0

你想火方法一次后特定时间?行动是有帮助的。

-(void)addBlueAction { 
    [self addChild:self.blue_action]; 
    [self runAction:[CCSequence actions: 
     [CCDelayTime actionWithDuration:1], 
     [CCCallFunc actionWithTarget:self 
      selector:@selector(removeBlueAction)], 
     nil]]; 
} 

-(void)removeBlueAction { 
    [self removeChild:self.blue_action cleanup:YES]; 
} 

如果您的应用的目标是针对iOS 4.0之后的,则可以使用Blocks。

-(void)addBlueAction { 
    [self addChild:self.blue_action]; 
    [self runAction:[CCSequence actions: 
     [CCDelayTime actionWithDuration:1], 
     [CCCallBlock actionWithBlock:^{ 

      [self removeChild:self.blue_action cleanup:YES]; 

     }], 
     nil]]; 
}