1

基本的に、私のアプリでメニュー項目を押すと、ユーザーは新しい画面に移動します。しかし今、私はオンラインで少しのデータ(時間/日付)を取得したいと思っています。データを取得すると、ページのどこかに表示されます。現時点では、アプリがデータを取得するまで新しい画面は読み込まれません。データが取得されると、画面がすぐに読み込まれ、ダウンロードされたデータが最終的に表示されるのではなく、数秒休止します。

onCreateの後に呼び出されるのでonStartメソッドを使用しようとしたので、ページが作成されて表示されてからonStartが呼び出されると思いましたが、それは発生しません。データをオンラインにしてからページを表示するため、読み込みの間にまだ遅れがあります。すでにロードされています。

どうすればこれを並べ替えることができますか?ありがとう

4

1 に答える 1

1

どのような種類の読み込み操作でも、バックグラウンドで何かを実行していることをユーザーに知らせるためにAsyncTask、 と を組み合わせて使用​​することを検討する必要があります。ProgressDialog

onPreExecute()のandメソッドでのみ UIThread と対話できることに注意してonPostExecute()くださいAsyncTask

onCreate()したがって、あなたのケースでは、Activity のメソッドでAsyncTask を起動し、メソッドで ProgressDialog をonPreExecute()表示してから、情報を表示し、ProgressDialog をonPostExecute.

あなたが話しているこの遅れをなくすことはほとんど不可能です。したがって、適切に処理することをお勧めします。

これがあなたの質問に答えるのに役立つことを願っています.

于 2012-04-13T21:21:59.833 に答える