с NSTimer задержка не достигается

Я хочу задержать между каждым выходным результатом, скажем, 1 секунду. Код ниже не задерживает, но обрабатывает правильно. Почему это не задерживается между каждым?dealCard

- (IBAction)startPause
{
    if ([self.deal length]>cardNum) {
        timer = [NSTimer timerWithTimeInterval:1.0 target:self selector:@selector(dealCard) userInfo:nil repeats:NO];
        [timer fire];
    }
}


- (void) dealCard{
    card.text = [NSString stringWithFormat:@"%i",cardNum+1];
    cardTo.text = [self.deal substringWithRange:(NSRange){(cardNum+self.randCut)%[self.cardList count],1}];
    cardNum=cardNum + 1;
    [self startPause];
}
 Bryan Chen12 июн. 2013 г., 01:10
вам нужно прочитать документы оNSTimer первый
 Josh Caswell12 июн. 2013 г., 01:10
Так как,как я прокомментировал ваш другой вопрос, вы'немедленно запустить таймер (который нев любом случае запланировано). Что ты подумал[timer fire]; сделал бы?

Ответы на вопрос(1)

Решение Вопроса

документация fire "Вызывает получателясообщение, которое будет отправлено его цели. " Вот почему этострельба мгновенно.

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

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

timer = [NSTimer scheduledTimerWithTimeInterval:1.0
                                         target:self
                                       selector:@selector(dealCard)
                                       userInfo:nil
                                        repeats:NO];

И удалить[timer fire] полностью, так как после этогоинтервал времени s истек.

 zerowords12 июн. 2013 г., 02:01
Это ответ. Я пытался отредактировать ответ, чтобы заглавные буквы C вdealCard но был неудачным. я думалfire запустил таймер, для тех кто спросил. Теперь мне нужно поместить пустой вывод между каждым или анимировать каждый. Есть ли простой способ сделать это?

Ваш ответ на вопрос