私のアプリでgetValuesAndCalculate
に電話する必要があります。しかし、その作業を行うためには、サーバーからレコードを取得する必要があります。これは、非同期呼び出しで行う必要があります。サーバーデータは、コールバック関数を介して受信されます。したがって、getValuesAndCalculate
では、計算を進める前にデータがあるまで待つ必要があります。これをどのように実装すればよいですか?iOS/iPhoneでコールバック関数が返るのを待つ
0
A
答えて
2
使用プロトコルおよび代表者:
代表団は何もありませんが、あなたは、サーバー側のオブジェクトへのあなたのクラスからオブジェクトを割り当てます。 サーバーはこのオブジェクトを使用して、クライアント側のコードでメソッドを呼び出すことができます。
+0
また、NSNotificationCenterを使用することもできます。それは同じだ。 ループなどを使用しないでください。応答が来るまでアプリをブロックする必要はありません。あなたのアプリは何か起きるまで待つ必要があります。 – kinghomer
0
サーバからデータを取得するまでNSRunloopを使用してみてください。
しばらく { [[NSRunLoop currentRunLoop] RUNMODE:NSDefaultRunLoopMode beforeDate:1.0] }(isFinished!):
0
あなたはこの質問IE用のスレッドを実装することができ、
// in main thread
// start activity indicator
NSThread *calculateThread = [[NSThread alloc] initWithTarget:self selector:@selector(getValuesAndCalculate) object:nil];
[calculateThread start];
// End of Main thread
- (void)getValuesAndCalculate
{
// Perform transactions with server
[self performSelectorOnMainThread:@selector(continueMainThreadOperations) withObject:nil waitUntilDone:YES];
}
などについては
それはそれです!
関連する問題
- 1. コールバック関数が返るまで待つ方法は?
- 2. Threading.Timerコールバック関数が終了するのを待つ
- 3. 複数のコールバックを待つ
- 4. 非同期jsで関数が返るのを待つ
- 5. コールバック関数を返す
- 6. コールバック関数がfalseを返すCodeIgniter
- 7. PHPが関数を待つ
- 8. 非同期関数が範囲オブジェクトを返すのを待つ
- 9. aerospike_query_foreachでビルドエラーを返すコールバック関数
- 10. コールバックのハンドルを待つ
- 11. コールバック関数を持つドライバ
- 12. 関数が期待以上に返す
- 13. ASP.NET MVC JsonResultがjQuery.postでコールバック関数のresponseTextを返さない
- 14. コールバック関数が
- 15. 関数が他の関数がangular2で終了するのを待つ方法
- 16. イオン2サービス関数は返される前にローカルストレージを待つ
- 17. ノードJsコールバック関数を返す
- 18. 関数内のJQuery $ .post。コールバックが返り値を定義するのを待ちます。
- 19. コールバック関数の折り返し
- 20. NodeJS提供のコールバック関数が 'コールバックは関数ではありません'を返します。
- 21. Nodejsでコールバック関数を呼び出す前にN個のクエリが終了するのを待つ方法
- 22. 非同期コールバック関数の値を返すNode.JS関数
- 23. コールバック関数forループ内のコールバック関数
- 24. コールバック関数からのDrupalコールバック関数
- 25. MVC関数は戻り値を返す前に非同期関数を待つ
- 26. AngularJS/Ionicでコールバック応答を待つ
- 27. reactjsでFB.login()コールバックを待つ方法は?
- 28. Retrofit、RxJavaでコールバックを待つ方法
- 29. オブジェクトインスタンスのPHPコールバックと関数の戻り値を待ちます
- 30. 続行する前に複数のコールバックが発生するのを待つ
独自のロジックを持つプロトコルに進む.. – ajay
サーバのデータコールバック関数からgetValuesAndCalculateを呼び出しますか? – danielbeard
[AFNetworking](https://github.com/AFNetworking/AFNetworking)をご覧ください。ASync要求を行い、ブロックを使用して応答を処理できます。 – rckoenes