如何下载没有显示悬挂的东西?

Gre*_*rne 0 iphone xcode objective-c download

好的.所以我正在创建这个应用程序,除了一件事我真的很开心.它使用了大量的互联网数据库检查等,并且每次执行此操作时都会挂起,直到它完成,破坏了界面的流动性.反正有没有避免这个?当您单击按钮或有时仅因NSTimer而导致下载内容.我希望用户能够流畅地通过界面和应用程序在它到达时更新信息.无论如何还有吗?

编辑 - 当前同步代码:这是下载CSV文件:

NSString *link=[[NSString alloc] initWithFormat:@"http://d.yimg.com/autoc.finance.yahoo.com/autoc?query=%@&callback=YAHOO.Finance.SymbolSuggest.ssCallback",timer.userInfo];
NSURL *url=[[NSURL alloc] initWithString:link];
NSData *dl=[[NSData alloc] initWithContentsOfURL:url];
NSString *str = [[NSString alloc] initWithData:dl encoding:NSUTF8StringEncoding];
Run Code Online (Sandbox Code Playgroud)

这是将png文件下载到webView中:

NSString *link=[[NSString alloc] initWithFormat:@"http://chart.finance.yahoo.com/z?s=%@&t=GOOG&q=m",self.Input.text];
url=[[NSURL alloc] initWithString:link];
[self.graph loadRequest:[NSURLRequest requestWithURL:url]];
Run Code Online (Sandbox Code Playgroud)

Jim*_*Jim 5

听起来你正在做同步请求.你不应该在主线程上这样做.您最好的选择可能是切换到异步请求.您可以在后台线程上发出同步请求,但在大多数情况下这更复杂,更不必要.