Как вызвать таймер обратного отсчета с 5 секунд, и он должен уменьшаться до 1 секунды в iPhone? - PullRequest
1 голос
/ 16 марта 2012

У меня есть приложение, в котором я хочу, чтобы при первом запуске приложения оно показывало экран в течение 2 секунд, на котором отображалось предупреждение о приложении, а через 2 секунды начался обратный отсчет с 5 секунд, который должен уменьшиться с 5 секунд.до 1 секунды.

Ответы [ 3 ]

1 голос
/ 17 марта 2012

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

  • определите NSTimer и запустите его, как только отобразится предупреждение. Ваше определение будет таким:

    timer = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(timerFires) userInfo:nil repeats:YES];
    
    [timer fire];
    
  • определить глобальное целое число и установить его начальное значение равным 7 (предположим, вы назвали его counter ).

-в селекторе timerFires вы уменьшаете счетчик на 1 и проверяете его значение, когда его значение, равное 5, начинает показывать его значение на UILabel, например, и когда его значение 1 делает недействительным таймер и делает то, что вы хотите в этот момент .. timerFires будет так:

- (void)timerFires
{

   counter --;
   if(counter ==5)
   {
      //show its Value
   }

   if(counter ==1)
   {
      [timer invalidate];
      timer = nil;

      //Do other stuff
   }
}
1 голос
/ 16 марта 2012

Есть два способа:

  1. [NSTimer timerWithTimeInterval: .....]
  2. [self performSelector: withObject: afterDelay:]
0 голосов
/ 16 марта 2012
[NSTimer scheduledTimerWithTimeInterval:60 target:self selector:@selector(updateFunction) userInfo:NULL repeats:YES];

В updateFunction вы можете написать свой код для обратного отсчета. Вы также можете установить «повторы: НЕТ» и вызывать функцию обновления в конце самого себя, если это необходимо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...