У меня есть действие под названием HomeActivity, которое имеет SurfaceView и показывает изображение предварительного просмотра камеры. Это занятие довольно тяжелое и кажется медленным, если вы начинаете/перезапускаете его.
Итак, я провел некоторые исследования и обнаружил, что метод onCreate каким-то образом всегда вызывается. На мой взгляд, этого не должно происходить, если активность уже запущена?
В документации говорится :Вызывается при первом создании действия. Здесь вы должны выполнить всю обычную статическую настройку :, создать представления, привязать данные к спискам и т. д. Этот метод также предоставляет вам пакет, содержащий ранее замороженное состояние активности, если оно было. Всегда следует 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);