1

私は、データ ピッカーのデータを非同期的にロードし、データ ピッカーをリロードするアプリを作成していますが、すべて問題ありません。

問題は、ユーザーがテキスト フィールドをタップすると、アプリがネットワークに情報を要求することですが、情報が読み込まれていないときにユーザーが戻るボタンをタップすると、ビューは消えますが、データはまだ読み込まれています。バックグラウンドで。

[myThread cancel];この読み込みメソッドをカスタム スレッドで実行してからonを呼び出してみましviewWillDisappearたが、データはまだ読み込まれます。ユーザーが明らかにデータをロードしたくないときにデータを使用するのを避けたいです。何か助けはありますか?

com.apple.nsurlconnectionloader を強制終了することを考えていましたが、その方法がわかりません。

4

1 に答える 1

0

ここで注意すべきことはほとんどありません。NSThread をキャンセルしてもすぐには終了せず、終了のマークが付けられるだけです。

NSURLConnection代わりに、デリゲートを 内に実装しNSOperation、ダウンロードをキャンセルしたい場合はcancel、そのisCanceledプロパティをに設定する操作を呼び出すことができますYES。これをフラグとして使用して操作の実行ループを終了すると、ダウンロードは続行されません。

Apple には、NSOperation の使用に関する優れたテクニカルノートがあります https://developer.apple.com/library/ios/#technotes/tn2109/_index.html

于 2012-11-02T22:23:08.097 に答える