HomeActivityというアクティビティがあり、SurfaceViewがあり、カメラのプレビュー画像が表示されます。このアクティビティは静かで重く、起動/再起動すると低速です。onCreateは、インテントでナビゲートする場合には常に呼び出されます。
私はいくつかの調査を行い、何とかいつもonCreateメソッドが呼び出されていることを知りました。アクティビティが既に開始されている場合、これは起こらないはずです。
documentationは: アクティビティが初めて作成されたときに呼び出されます。ビューの作成、リストへのデータのバインドなど、通常の静的な設定をすべて行う必要があります。この方法では、アクティビティの以前のフリーズ状態(存在した場合)が含まれるBundleも提供されます。 常にonStart()が続きます。
protected void gotoHome() {
final Intent intent = new Intent(SomeOtherActivity.this, HomeActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
}
編集:
ここで...私はHomeActivityを残していますどのように特別なものではありません:
final Intent i = new Intent(HomeActivity.this, SomeOtherActivity.class);
startActivity(i);
他のアクティビティを開始するときにHomeActivityを終了しないように注意してください。 – Egor
onCreat()メソッドは、 'gotoHome()'メソッドを使用しているときに呼び出されますか? –
@Error finish()を呼び出さない – Mark