Эффект Uilabel как в играх

Кто-нибудь знает, как заставить UILabel появляться по буквам, как вы можете видеть в некоторых играх или других.

Благодарность


person Floo    schedule 04.04.2010    source источник


Ответы (1)


Настройте NSTimer, чтобы установить свойство текста UILabel.

-(void) revealTimer:(NSTimer *)inTimer {
 if ( ++mIndex < [mFullString length] ) {
  mLabel.text = [mFullString substringToIndex:mIndex];
 } else {
  mLabel.text = mFullString;
  [inTimer invalidate];
 }
}

начните с чего-то вроде этого:

-(void) revealString:(NSString *)inString {
 mIndex = 0;
 mLabel.text = "";
 mFullString = [inString retain];
 [NSTimer scheduledTimerWithTimeInterval:0.125 target:self selector:@selector(revealTimer:) userInfo:nil repeats:YES];
}

убедитесь, что не произошла утечка mFullString, как описано выше, и сохраните таймер, если вам может понадобиться сделать его недействительным.

person drawnonward    schedule 05.04.2010