2012-02-07 2 views
0

XMLを読み込んでいて、データが読み込まれている間にアプリケーションを「一時停止」します。メインスレッド以外のスレッドですべての読み込みを行う方法はありますか?私は試してみましたシンクロホラートリックを行うだろう思考をロードするが、サイコロ。これまでアニメーションが詰まることなくiosの読み込み

NSString *url = @"url for all my xml"; 
NSError *error = nil; 
NSURLResponse *response = nil; 
NSURLRequest *req = [NSURLRequest requestWithURL:[NSURL URLWithString:url]]; 
NSData *data = [NSURLConnection sendSynchronousRequest:req returningResponse:&response error:&error]; 

答えて

2

あなたがAppleのドキュメントから、sendSynchronousRequest:returningResponse:error:を呼んでいる:

非同期ロードのシステムがために特別に生成されたスレッドのURLのロードを実行しながら、呼び出し元のスレッドがブロックされていますこのロード要求。あなたは非同期メソッドの呼び出しのいずれかを行った場合

sendAsynchronousRequest:queue:completionHandler:のように、それはあなたのメインスレッドをブロックすることはありません。また、XMLをバックグラウンドでロードしながらUIの更新を行うことができます。

関連する問題