Я пытаюсь создать приложение, которое содержит два действия: MainActivity
и SubActivity
.
SubActivity
будет создано из MainActivity
путем вызова startActivityForResult()
.
Когда я нажимаю кнопку, установленную в SubActivity
, она должна завершиться сама и перейти к MainActivity
.Но у меня проблема с отделкой SubActivity
.После вызова SubActivity.onPause()
, немедленно будет вызван SubActivity.onCreate()
и SubActivity будет воссоздан.
Я просто хочу закрыть SubActivity и отобразить MainActivity
, но почему это происходит?
Я искал те же вопросы и обнаружил, что изменение поворота вызовет системный вызов onCreate ().Но в моем случае ориентация экрана зафиксирована в портретной ориентации.
Может кто-нибудь дать мне идею решить эту проблему?
РЕДАКТИРОВАТЬ: Я решил проблему.Была неправильная логика в MainActivity
.
SubActivity
будет создано из MainActivity
, когда переменная содержит определенное значение.Метод обновления дисплея, который отражает значение переменной, вызывался дважды в коде.Это заставило мое приложение воссоздать SubActvity
после finish()
.
MainActivity
запросов на создание Subactivity
дважды, но, поскольку мое приложение установлено как android:launchMode="singleTop"
, второе SubActivity
может бытьсоздается только после того, как первый был закончен.Большое спасибо, чтобы дать мне совет!