IOS: организовать анимацию для лейбла - PullRequest
1 голос
/ 15 декабря 2011

Мне нужно сделать анимацию с меткой: Пример:

Если у меня есть ярлык «МИР», я хочу сделать анимацию, которая сначала показывает «W» после 1 секунды «O» и через 1 секунду «R» ... ecc

Стоит ли использовать ярлык или несколько ярлыков (по одному ярлыку на каждую букву)?

1 Ответ

1 голос
/ 15 декабря 2011

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

В общем случае для более сложной анимации используйте больше меток.Вы можете анимировать свойства представления, поэтому вы должны сделать каждую букву представлением (меткой).

Сначала вы создаете таймер:

[NSTimer scheduledTimerWithTimeInterval:1.0
    target:self
    selector:@selector(targetMethod:)
    userInfo:nil
    repeats:YES];

, а затем пишете метод анимации, подобный следующему:

-(void) targetMethod : (NSTimer*) timer {
    static int count = 0;
    NSString* letter = nil;
    switch(count) {
      case 0: letter = @"H"; break;
      case 1: letter = @"e"; break;
      case 2: letter = @"l"; break;
      case 3: letter = @"l"; break;
      case 4: letter = @"o";[timer invalidate]; break;
    }
    count++;
    label.text = [NSString stringWithFormat:"%@%@", label.text, letter];
}
...