私はiPhone開発にかなり慣れていませんが、最初のアプリ(実行しているWebサイトに関連する)をリリースするところです。このアプリは非常に大規模なデータベースを必要とするため、最も一般的に使用されるデータのみをローカルに保存し、Webサイトが実行されているデータベースからJSONWebサービス呼び出しを介して他のデータを取得することにしました。
シミュレーターを使用してOKを実行している間(ライブDBをヒット)、Webサービス呼び出しに依存する検索は、電話で実行しているときに思っていたよりも時間がかかりました。これらの呼び出しは、瞬間的なネイティブ検索と比較すると、はるかに見栄えが悪くなります。相対的な違いを減らすために、ネイティブ検索(Webサービス検索ではすでに使用されている)に偽のインタースティシャル(アクティビティインジケーターのあるページ)を入れたかったのですが、ナビゲーションコントローラーのプッシュのタイミングに問題がありました。 sleep(n)。
とにかく、私のアプリの検索セクションは、tabControllerタブのあるnavControllerです。このようなコードを使おうとすると:
[[tabBarController.viewControllers objectAtIndex:0] pushViewController:(UIViewController *)waitingControllerアニメーション:YES]; sleep(2);
ビューコントローラーがプッシュされ、アプリが2秒間待機してから検索プロセスのシミュレーションを続行する場合、プッシュは常にスリープが終了するのを待ってから実行します。
私はnavControllerプッシュで他の奇妙な結果をいくつか経験しました。いくつかの機会に、インタースティシャルとしてプッシュしたビューコントローラーがコンテンツごとに所定の位置に残り、押し込みたいものは残りの場所です。
私のせいにするのは根本的な理解の欠如であると確信しているので、ここで少しのガイダンスを期待しています。
乾杯、
アラン。