4

私のアプリ(ゲーム)がどんどん大きくなっているので、私は問題に遭遇し始めました。

「ゲームの開始」ボタンのあるメニューアクティビティがあります-ユーザーがこのボタンを押すと、メインのゲームアクティビティが開始されます-このアクティビティでは、コンストラクターでビットマップなどを作成していますが、アクティビティが開始されると、ゲームが実際に開始されるまでにわずかな遅延(約2秒)があります。

私は明らかに何か間違ったことをしています-誰かがこれを回避する方法をアドバイスして、遅延(明らかに発生する必要があります)-がユーザーに気付かれないようにしてください。

4

3 に答える 3

3

必要なものをすぐにロードします。残りをバックグラウンドスレッド(おそらくAsyncTask)にロードします。ロードする前に必要な場合は、一時停止するか、必要に応じてロード画面を表示します。

于 2013-01-24T21:26:26.150 に答える
1

メニューアクティビティのバックグラウンドで、またはアプリがバックグラウンドスレッドまたはAsyncTaskを使用して作成されている場合でも、ビットマップのロードを開始できます。ただし、すべてのビットマップのロードが完了する前にユーザーがメインのゲームアクティビティに移動した場合に備えて、何らかのロード画面が必要です。

于 2013-01-24T21:27:51.443 に答える
0

IntentServiceを開始して、ビットマップをロードすることもできます。ビットマップがロードされると、IntentServiceはLocalBroadcastManagerを使用してブロードキャストを送信できます。次に、結果を気にする各コンポーネントは、BroadcastReceiverをLocalBroadcastManagerに登録できます。

于 2014-02-27T19:29:08.440 に答える