次のシナリオがあります: アクティビティ A で、ユーザーがボタンをクリックすると、アプリはサーバーにリクエストを送信して情報を取得し、この情報はアクティビティ B を開始するインテントに配置されます。
アクティビティ B のonCreate
メソッドでsetContentView(R.layout.activity_b)
(このレイアウトは非常に複雑なので、XML からインフレートするのにも時間がかかります)、一連の初期化を行います。最後にonStart
、コンポーネントの最終的な準備/配置を行います。
アクティビティ A では、ユーザーがボタンを押すとAsyncTask
、サーバーから情報を取得してアクティビティ B を開始する を開始し、必要な情報をインテントに渡します。「startActivity」を呼び出すと、アクティビティ B のウィンドウがすぐに所定の位置にスライドしますが、初期化が完了するまでに数秒かかる場合があります。この数秒間、黒い画面が表示されます。そして、最後にonStart
が実行され、すべてが続行されます。
私がやりたいことは、アクティビティ B が表示される前に、このすべての初期化を画面外で完了して、「到着」したときにすべてのレイアウトが既に存在するようにすることです。これを達成する方法はありますか?