2011-07-04 10 views
-2

もし私がAppDelegateにNSURLConnectionデリゲートメソッドを実装していて、それらをapplication:didFinishLaunchingWithOptionsから呼び出しているのであれば、application:didFinishLaunchingWithOptionsはデリゲートメソッドの前に実行されます。NSURLConnectionとURLダウンロードの質問

application:didFinishLaunchingWithOptionsは、ナビゲーションコントローラまたはタブバーコントローラを追加するか、メインウィンドウと表示にどのようなビューを追加するので、最初のビューが起動する前にNSURLConnectionをダウンロードして終了する必要がある場合は、

self.window.rootViewController = self.navigationController; 
    [self.window makeKeyAndVisible]; 

は基本的に、私はオンラインで、そのタイムスタンプに応じてタイムスタンプをダウンロードする必要があり、私はどちらかはっきりと自分のコアデータのデータベースを再ダウンロードして、ビューを表示する、または私はちょうどビューが表示されますされます。そのため、ビューがロードされる前にNSURLConnectionの実行が終了する必要があります。

提案がありますか?

は、あなたがスプラッシュ画面を表示することができるティル

- (void)connectionDidFinishLoading:(NSURLConnection *)connection{ 
    self.window.rootViewController = self.navigationController; 
    [self.window makeKeyAndVisible]; 
} 

に線の下に入れて

答えて

0

、ありがとうございました。 Default.png

+0

ひどい考え。ユーザーがEDGE上で動作している場合、アプリケーションが応答していないと考えられます。 – darksky

+0

btwの場合は、didReceiveResponseデリゲートメソッドからコンテンツサイズを取得してプログレスバーを表示することで、ユーザーに知らせることができます... – iMOBDEV

+1

これは、データを読み込む間に何かできることです。ロードインジケータ、進捗状況などの表示など、あなた自身の考えで何かを考える必要があります。私たちはあなたにすべてを与えることはできません.. – Deeps

1

私は非同期的にダウンロード中のものを表示します。関連するコールバックメソッドは、モデル(データベース)を更新できます。その場合、ビューが更新されます。ユーザーが物事をダウンロードしている間に座って待つことはうまくいかない。

+0

マルチスレッドが必要ですか? – darksky