2012-03-29 6 views
0

私のアプリケーションは、XMLファイルからダウンロードしたデータで構成されています。データには短いテキストと画像が含まれます。データをユーザーフレンドリーな方法で事前ロード

現在、すべてのデータをダウンロードし、ViewDidLoadメソッドでビューコントローラにビューを構築しています。これにより、すべてのデータがダウンロードされるまでアプリケーションがルートビューを表示しなくなります。少なくとも、スプラッシュ画面の間にデータの一部をプリロードするために、よりユーザーフレンドリーな方法で表示したいと思います。

ところで、怠惰な画像読み込みを行ったので、メインビューが表示されている間に画像を読み込むことができます。

ビューの数がXMLの行数に依存する限り、XMLビューをビルドしながら非同期にXMLをロードすることは、スイートには必要ではありません(または多分私は間違っています)。

私は解答の解答は非常に難しいので、記事や、非同期やマルチスレッド処理の詳細な説明が書かれた本を指すこともできます。

答えて

1

私は、プログレスバーがあまりにも、いいだろう あなたは O_O非同期ロードすることはできませんなぜあなたは(好ましく活動の指標と)とにかく、いくつかの「ロード」ビューを表示する必要があります表示されません。

ダウンロードが完了したら、表示を再読み込みして再レイアウトします。

テーブル行のセル数を意味する場合は、numberOfRowsInSection関数(または使用するもの)がすべてのデータを読み込むようにtableviewに指示することができます。それはロードされているかどうか。

EDIT:あなたはそれが非常にユーザー非友好的だと私はscrollviewsのコレクションを持っていることを意味するビューの数によって

+0

aswellアプリケーションの読み込みが遅くなりますので、アプリケーションがまだ読み込まれている間ことをやるべきではありません。ビューイング・コントローラーのすべてをロードしてアクティビティー・インディケーターを表示してから、すべてをリロードすることを意味します。 – Alexidze

+0

Yup http://allseeing-i.com/ASIHTTPRequest/のようなsthを使用してxmlをダウンロードすると、実際には進行状況バーを表示するためにほとんどの作業が終了します:) – Infinite

1

didFinishLaunchingWithOptions: appDelegateのメソッドですべてのデータを解析し、次に解析する必要があると思います。

[self performSelectorInBackground:@selector(downloadData:) withObject:nil]; 

方法downloadData:構文解析手順が含まれています。

関連する問題