Как отложить выполнение в цикле? Может быть, NSTimer? - PullRequest
1 голос
/ 16 ноября 2011

Я использую for цикл, в котором я использую else if условия.В одном из else if я хочу продолжить цикл for с некоторой задержкой.Можно ли использовать оператор continue в NSTimer?Если это возможно, как я могу использовать оператор продолжения в NSTimer.

for(int i = 0; i<[array count];i++){

    else if (condition)
    {
    }
    else if (condition)
    {
    }
    else if (condition)
    {
    }
    else if (condition)
    {
       // Here I want to continue the for loop with some delay
    }
    else if (conditions)
    {
    }
    else
    {
    }

}

Пожалуйста, помогите мне

Ответы [ 3 ]

5 голосов
/ 16 ноября 2011

Используйте NSThread sleepUntilDate: и NSDate dateWithTimeIntervalSinceNow: для задержки.

Пример:

for(int i=0; i<5; i++){

    [NSThread sleepUntilDate:[NSDate dateWithTimeIntervalSinceNow:1.0]];
    NSLog(@"Delaying");

}

Выход:

15:57:46.383 Delaying
15:57:47.386 Delaying
15:57:48.388 Delaying
15:57:49.389 Delaying
15:57:50.391 Delaying
0 голосов
/ 10 июля 2015

Вы можете просто использовать сон (<# длительность сна #>);

0 голосов
/ 16 ноября 2011

Мне кажется, вы захотите приостановить поток, а не использовать NSTimer. В вашем выражении if что-то вроде следующего:

[NSThread sleepforTimeInterval:]; продолжить;

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