3

タブバーアプリケーションを作成しています。タブの 1 つは、ナビゲーション アプリケーションである RSS フィード用です。しかし、タブバットボタンをクリックすると、そのタブのビューをロードするのに時間がかかります。これは、アプリケーションがサーバーからフィードがロードされるのを待っているためです。そのフィードの読み込みが行われる前にビューを読み込む方法はありますか? 今のところ、viewDidLoad メソッドでリクエストを出しています。それが問題を引き起こしているのです。タブバーのボタンをクリックしたときに瞬時にビューがロードされるようにするには、コードをどの部分に移動しますか。

4

3 に答える 3

1

iCodeBlog のこの主題に関するこの素晴らしい記事をお勧めします。これは非常にエレガントな方法です。RSS フィードの読み込みを として送信するとNSOperation、メイン スレッドをブロックすることなくバックグラウンドで適切に行われます。

于 2010-03-05T09:17:58.057 に答える
1

使用する:

[self performSelector:@selector(performRSS:) withObject:<nil afterDelay:0.3f];

また

[NSThread detachNewThreadSelector:@selector(performRSS:) toTarget:self withObject:nil];

RSS フィード関連のコードを「performRSS」という名前の別の関数に配置します。

于 2010-03-08T13:38:13.900 に答える
0

また、(Apple が推奨するように) HTTP リクエストを非同期に使用しないことが問題だと思います。このドキュメントを参照してください。http://developer.apple.com/mac/library/documentation/Cocoa/Conceptual/URLLoadingSystem/Tasks/UsingNSURLConnection.html

私のアプリケーションではうまくいきました。

于 2010-03-05T10:14:01.923 に答える