Как я могу обновить UIImagesViews по-другому? - PullRequest
0 голосов
/ 18 июня 2009

Я надеюсь, что кто-то может направить меня в правильном направлении.

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

Я создал небольшой пример, чтобы показать, что я делаю. В основном у меня есть 3 изображения на экране. Когда кнопка нажата Я хочу обновить первое изображение, воспроизвести звук, подождать секунду и обновление следующее и т. д.

Однако я слышу только один звук, и все изображения обновляются в конце.

Похоже на простую вещь. Как мне это сделать?

#import "testappViewController.h"

@implementation testappViewController


@synthesize p1,p2,p3;   //UIImageViews
@synthesize button1;
@synthesize volleyFileID;

- (IBAction)buttonpressed:(id)sender
{
    NSString *TLS = @"RQP.png";

    NSString *volleyPath = [[NSBundle mainBundle] pathForResource:@"click" ofType:@"caf"];
    CFURLRef volleyURL = (CFURLRef ) [NSURL fileURLWithPath:volleyPath];
    AudioServicesCreateSystemSoundID (volleyURL, &volleyFileID);

    TLS = @"RQP.png"; 
    UIImage *sampleimage=   [[UIImage imageNamed:TLS] retain];
    p1.image = sampleimage; 
    AudioServicesPlaySystemSound(volleyFileID);

    [NSThread sleepForTimeInterval:0.5];

    p2.image = sampleimage; 
    AudioServicesPlaySystemSound(volleyFileID);

    [NSThread sleepForTimeInterval:0.5];

    p2.image = sampleimage; 
    AudioServicesPlaySystemSound(volleyFileID);

}

1 Ответ

1 голос
/ 18 июня 2009

Вы не должны использовать - [NSThread sleepForTimeInterval:] здесь. Попробуйте использовать - [NSObject executeSelector: withObject: afterDelay:], и ваши последние два изображения изменятся в отдельный метод. Тогда ваш цикл событий будет работать как обычно, ваши звуки будут воспроизводиться, и все ваше приложение будет оставаться отзывчивым, пока оно продолжается.

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