SVProgressHUD如何延迟指定的时间量

时间:2011-11-04 00:44:26

标签: ios iphone uiactivityindicatorview svprogresshud

我正在使用第三部分UIActivityIndi​​cator SVProgressHUD,当我的视图加载时,我正在使用它。我希望延迟activityIndi​​cator大约1秒,同时我的应用程序中的一些事情发生。然后调用[SVProgressHUD dismiss];基于1秒等待......但我不知道该怎么做。

目前这是我的代码在viewdidload中的外观

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

    [SVProgressHUD dismiss];

我知道有一个dismisswithsucsess:计时器..但这似乎延迟了我不想要的成功消息出现的时间..我想延迟指示器并且没有文本..但只是想不出办法去做。

我试过了

sleep(1); //which dosnt work 

我也试过

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

并放入[SVProgressHUD解雇];在stopAnimating方法中,但由于看起来所有的调用都需要在同一个方法中,所以这会失败。

1 个答案:

答案 0 :(得分:10)

您可以使用计时器设置一个方法来解除您的视图,如下所示:

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

使用方法:

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