2011-11-04 218 views
1

我正在使用第三部分UIActivityIndi​​cator SVProgressHUD,我initalising這當我的視圖加載。我想延遲activityIndi​​cator大約1秒,而在我的應用程序中發生一些事情。然後調用[SVProgressHUD解除];基於那1秒等待..但不知道如何做到這一點。SVProgressHUD如何延遲指定的時間

目前這是我的代碼看起來是在viewDidLoad中

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

    [SVProgressHUD dismiss]; 

我知道有一個dismisswithsucsess:定時器..但這似乎延遲的時間出現在sucsess消息量,我不希望..我想推遲指標,並沒有文字..但只是想不到一種方式來做到這一點。

我已經試過

sleep(1); //which dosnt work 

我也試過

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

抹SVProgressHUD解僱];在stopAnimating方法裏面,但是這個看起來好像所有的調用都需要在同一個方法中。

回答

10

你可以使用一個計時器來設置駁回視圖像這樣的方法:

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

隨着方法:

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

是啊..我會現在就來試試吧。 –

+0

我編輯了這篇文章,讓你知道你的方法應該看起來像 – Wesley

+0

IT WORKED!謝謝你..這是一個方便的功能! –