我想知道在Objective-C项目中等待代码执行完成的最简单方法,因为我正在调用Web服务并检索结果,但它在WebService完成被调用和填充之前就已经检索到了结果。有什么建议吗?
顺便说一下,这是我的Web服务代码:
现在的问题是,第二行代码在第一行完成之前就被执行了。
顺便说一下,这是我的Web服务代码:
NSMutableURLRequest *theRequest=[NSMutableURLRequest requestWithURL:tmpURl];
[theRequest addValue:@"text/xml; charset=utf-8" forHTTPHeaderField:@"Content-Type"];
[theRequest addValue:@"http://tempuri.org/GetCategory" forHTTPHeaderField:@"SOAPAction"];
NSString *msgLength=[NSString stringWithFormat:@"%i",[soapMessage length]];
[theRequest addValue:msgLength forHTTPHeaderField:@"Content-Length"];
[theRequest setHTTPMethod:@"POST"];
[theRequest setHTTPBody:[soapMessage dataUsingEncoding:NSUTF8StringEncoding]];
NSURLConnection *conn=[[NSURLConnection alloc] initWithRequest:theRequest delegate:self];
我正在使用的代码从另一个类调用此方法:
images = [ws callWebService:api :data];
images = [ws returnArray];
现在的问题是,第二行代码在第一行完成之前就被执行了。