SVProgressHUD как отложить на указанное количество времени - PullRequest
1 голос
/ 04 ноября 2011

Я использую третью часть UIActivityIndicator SVProgressHUD, я инициализирую это, когда загружается мое представление.Я хотел бы отложить ActivityIndicator примерно на 1 секунду, пока в моем приложении происходят некоторые вещи.затем позвоните [SVProgressHUD dismiss];на основе этого 1 секунды ожидания .. но я не уверен, как это сделать.

в настоящее время так выглядит мой код в viewdidload

[SVProgressHUD showWithMaskType:SVProgressHUDMaskTypeBlack];
    [SVProgressHUD setStatus:@"loading..."];   

    [SVProgressHUD dismiss];

Я знаю, что существует dismisswithsucsess: timer... но это, кажется, задерживает количество времени, когда появляется сообщение об успехе, на которое я не хочу ... Я хочу отложить индикатор и у меня нет текста ... но я просто не могу придумать, как это сделать.

Я пытался

sleep(1); //which dosnt work 

, также я пытался

//[SVProgressHUD performSelector:@selector(stopAnimating) withObject:nil afterDelay:0];

и ставил [SVProgressHUD dismiss];внутри метода stopAnimating, но он падает, поскольку кажется, что все вызовы должны быть внутри одного и того же метода.

1 Ответ

10 голосов
/ 04 ноября 2011

Вы можете использовать таймер для установки метода, который отклоняет ваше представление следующим образом:

[NSTimer scheduledTimerWithTimeInterval:1 target:self
selector:@selector(myMethod) userInfo:nil repeats:NO];

С методом:

-(void)myMethod:(NSTimer*)timer {
     // Dismiss your view
     [progressthingy dismiss];  
}
...