2011-01-10 61 views
0

包含一个UITableView我的第一个屏幕,我用来调用webservice的方法viewDidLoad中:载入屏幕调用

- (void)viewDidLoad { 
[super viewDidLoad]; 

self.navigationItem.title [email protected]"Brand List"; 

getBrands *obj = [[getBrands alloc]init]; 
[obj getBrandsList]; 

getBrandsList,但在此之前的web服务完成后,它加载屏幕,因此屏幕包含一个空列表。

所以我需要等待(即加载对话框),直到方法完成,然后用数据显示屏幕。

我该怎么做?

回答

0
-(IBAction) buttonClick: (id) sender{ 

    //show loading dialog here(activity indicator) 
    [self performSelectorInBackground:@selector(callWebService) withObject:nil];  

    } 

-(void) callWebService 
{ 
    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc]init]; 

    //resend request and parse response. 
    // create new view controller object and push screen 
    // hide loading indicator 

    [pool release]; 
} 
2

用UIActivityIndi​​catorView和UILabel创建一个新视图。然后用一些CATransition将它添加到窗口顶部。当你完成下载时删除这个屏幕。

+0

是的,这是很好的解决方案。 – Kampai 2016-03-02 09:13:04