1

私は簡単なAndroidゲームに取り組んでいます。メインアクティビティには「再生」ボタンがあります。ユーザーがそこをクリックすると、「他のプレーヤーの検索」アクティビティが開き、対戦する他のプレーヤーのリストが表示されます。

このプレーヤーのリストは、中央サーバーに接続することで動的に生成されるため、2〜3秒かかります。

ユーザーが「再生」をクリックしたときにアプリに実行させたいのは、「プレーヤーの検索」アクティビティの背景を開き、サーバーが応答するときに他のプレーヤーの名前を表示することです。

ただし、[再生]ボタンをクリックすると、2〜3秒間何も起こらず(アプリがサーバーからデータを取得している間)、すべてのデータが既に存在する新しいアクティビティウィンドウが開きます。

新しいアクティビティのバックグラウンドを最初に強制的に開き、次にデータの収集に取り組む方法はありますか?

4

2 に答える 2

2

新しいActivityを起動し、バックグラウンドスレッドですべてのロードを実行していることを確認してください。メインスレッドがビジー状態の場合、フリーズしていない場合でもフリーズしているように見えます。

これをチェックアウトAsyncTaskしてください。まさにそれが目的です:)

于 2012-05-29T15:19:23.463 に答える
2

これが、彼らがAsyncTaskを作成した理由です。これを見てください。

于 2012-05-29T15:20:14.700 に答える