无法让微调器出现

iPh*_*per 4 uiactivityindicatorview ios

我想用一个微调器.但是,下面的代码不会显示微调器,我不知道为什么.如何使这项工作?顺便说一句,它是从我创建的提交按钮调用的.

//spinner declared in .h file
UIActivityIndicatorView   *aSpinner; 

//throw up spinner from submit btn we created
aSpinner = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:
    UIActivityIndicatorViewStyleWhiteLarge];

[self.view addSubview:aSpinner]; 
[aSpinner release]; 
[aSpinner startAnimating]; 

//send blocking request 
[request startSynchronous];

//get rid of spinner when finished delegate is fired
- (void)requestFinished:(ASIHTTPRequest *)request 
{ 
    NSLog(@"REQUEST FINISHED"); 
    [aSpinner stopAnimating]; 
    //[aSpinner release]; 
} 
Run Code Online (Sandbox Code Playgroud)

zou*_*oul 14

如果在显示微调器后立即调用某些阻塞代码,则UI将不会更新,因为它仅在主运行循环运行时更新.如果这确实是问题的根源,那么当您注释掉[request startSynchronous]测试行时,微调器就会显示出来.

解决方案是使用异步请求.委托代码看起来就像你已经这样做了,但另一方面,启动调用提到了同步操作.小心解释一下?(或者我忽视了什么?)