2011-01-21 19 views
0

こんにちは私は以下のコードをtryinhで取得して画像データを取得していますが、NSDataが例外をスローしていないためにURLに画像がなく、アプリケーションがクラッシュしています。どのようにタイマーを持つことができるので、データ取得の操作を中止できるかどうかは時間がかかります。 // URL:URLがファイルである場合を除きadavncensdata ERROR URLにデータがない場合

答えて

2

tempData=[NSData dataWithContentsOfURL:[NSURL URLWithString:(NSString *)nextCatchItem.imageLink]];    

おかげで-dataWithContentsOfURL:を使用しないでください。これは、メインスレッドでは恐ろしいアイデアである同期フェッチを実行し、バックグラウンドスレッドでは(エラーが報告されないので)単純なアイデアです。代わりに、NSURLConnection、理想的には非同期API、またはバックグラウンドスレッドで実行している場合は同期APIを使用する必要があります。

+0

こんにちは、ありがとうございました。あなたはチュートリアルに私を紹介することができますか?私が達成しようとしているのは、URLからイメージをインポートして表示することです。 \ – likki

+0

[NSURLConnectionプログラミングガイド](http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/URLLoadingSystem/Tasks/UsingNSURLConnection.html)はどうですか? –

+0

はい、私はそれを探していた、非同期メソッドについての1つの質問があります。現在のイメージを表示しながら将来のディスプレイのイメージをダウンロードする必要がある場合、nsurlconnectionを設定して、ユーザーのやりとりをブロックせずにバックグラウンドでダウンロードするにはどうすればよいですか?これは可能ですか? – likki

関連する問題