2011-12-25 16 views
2

私は、この特定の問題に対処する方法を思ったんだけど:非同期呼び出し(特にiOSのジオコーディング)

私は地理的緯度、長いペアで初期化される場所のオブジェクトを、作成しています。次に、iOSジオコーダーを使用してその座標のアドレスを取得します。そのアドレスをインスタンス変数の1つに設定したいと思います。しかし、この非同期呼び出しは時間内に完了しないので、オブジェクトをインスタンス化してアドレスを表示しようとすると、まだ完了していません。これと同様の問題に対処するための戦略は何ですか?

ありがとうございます!メリークリスマス!

答えて

1

私はクリスマスイブで広範な回答を作成する気がしませんので、今ここで簡単な答えを出して、質問や詳細が必要な場合は後で編集します。

非同期リクエストのすべては、要求が失敗したか成功したとき、あなたが知っているデリゲート/プロトコルのメソッドを持っています。あなたはNSNotificationのAPIを使用すると、オブジェクトが要求を完了したときにトリガーの通知のためのアドレスを必要とする任意のオブジェクトを登録する必要があります。オブジェクトは通知を受け取ると、そのビューまたは必要な処理を設定できます。 requestDidFinish(または何でも)メソッドでは、通知を送信する必要があります。

詳細については、この資料チェックアウト(だけでなく、スレッドに関するいくつかのクールなものを!):http://www.raywenderlich.com/4295/multithreading-and-grand-central-dispatch-on-ios-for-beginners-tutorial

+0

素晴らしい、ありがとう! – Mason

+0

あなたは大歓迎です!私は、iOSのマルチスレッドなどにアップ読み始め、数日前にこの記事に出くわしたので、これは良いタイミングでした。非常にクールなもの。 –

関連する問題