2012-03-14 5 views
1

メインアクティビティには、顧客ベースと読み込み画面を読み込むので、読み込みに時間がかかります。私が別のアクティビティ(未処理の顧客レシートを表示)を呼び出すと、「戻る」ボタンを与えるために、メインのアクティビティを即座にロードします。しかし、私が他のアクティビティ(注文、履歴など)を呼び出すときに、「戻る」ボタンを押すと、顧客を再び表示するのに時間がかかります。これは、アクティビティの1つがメインアクティビティを破棄しないように、残りのアクティビティを破棄した場合と同様です。すべてが同じように作成されます(私は思っています)。これはできますか?アクティビティと呼ぶものは、主に破壊されませんか?記憶上の問題がありますか?ANDROID - アクティビティによってメインアクティビティが破棄されることはありません。

+0

ソースを投稿してください。ヒント - アクティビティを破棄したい場合はfinish();を呼び出します。 –

答えて

1

Activityから他の1つに行くとき、最初のActivityは破壊されません。バックスティックにプッシュされるので、ユーザーが「戻る」を押したときにすぐに戻ることができます。

その内容ですが、現在のトップActivityがあまりにも多くのメモリを占有する場合は破壊されます。 Android OSは、フォアグラウンドアクティビティのニーズに対応するために、バックスタックのアクティビティからリソースを解放します。この場合、アクティビティは効果的に「再開」され、ユーザが「戻る」を押すと再構築されなければなりません。

+0

ありがとうございました – Sebosin

+0

あなたは決して与えられたアクティビティを破壊しないAndroidを教えていただけますか? (FLAGなどで) – Sebosin

+0

私が知っている旗はありません。いつでも破壊することができると仮定しなければなりません。これは、通常、 'on(objectNotFound){//オブジェクトを再作成する}'のような 'onCreate'や' onResume'のif文を必要とします。 – DeeV

関連する問題