вопрос про iphone - зацикливание? - PullRequest
0 голосов
/ 31 мая 2010

Я хочу, чтобы в моем приложении был фоновый поток, который меняет изображение каждые 5 секунд в течение всего времени работы приложения. Может кто-нибудь указать мне, как это работает? Я новичок в темах.

Ответы [ 4 ]

1 голос
/ 01 июня 2010

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

Для получения информации о многопоточности я настоятельно рекомендую CS193P Лекцию о производительности , в них подробно рассматриваются NSThread, NSOperations и т. Д.

Также от Apple, Руководство по программированию потоков .

1 голос
/ 31 мая 2010

Если вы используете UIImageView и хотите анимированную смену изображений, вам даже не нужен таймер. UIImageView может анимировать между изображениями сам по себе:

NSArray *images = [NSArray arrayWithObjects: [UIImage imageNamed: @"foo.png"],
                                             [UIImage imageNamed: @"bar.png"],
                                             nil];

yourImageView.animationImages = images;
yourImageView.animationDuration = 5.0s;
[yourImageView startAnimating];

Подробности документированы в UIImageView документах .

0 голосов
/ 31 мая 2010

Вы можете использовать NSTimer для этого.Нет необходимости создавать новую тему:

[NSTimer scheduledTimerWithTimeInterval:5.0s target:self selector:@selector(updateImage) userInfo:nil repeats:YES];

0 голосов
/ 31 мая 2010

Вам не нужна нить для этого. Вы можете сделать это с помощью таймера, который проще, чем поток. См. Руководство по программированию таймера .

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