Жизненный цикл активности при изменении ориентации

#android #screen-orientation #android-lifecycle

#Android #ориентация экрана #android-жизненный цикл

Вопрос:

У меня есть активность MainActivity. MainActivity расширяет CustomActivity, который расширяет класс Activity. Внутри CustomActivity я переопределил onStop таким образом, что всякий раз, когда вызывается onStop, приложение очищает весь кеш и завершает работу. **** Нет проблем до сих пор****

Теперь у меня есть средство просмотра pdf в приложении, и я хочу, чтобы PDF автоматически настраивался всякий раз, когда я меняю ориентацию. Итак, я хочу, чтобы действие воссоздавалось каждый раз при изменении ориентации. Что происходит сейчас, так это то, что всякий раз, когда я поворачиваю экран, сначала вызывается приложение onStop (и из-за CustomActivity onStop приложение закрывается), а MainActivity onCreate никогда не вызывается.

Я знаю, это может быть самый глупый вопрос,

  1. но в любом случае, я могу остановить вызов onStop() всякий раз, когда я поворачиваю экран, даже если я хочу, чтобы onCreate вызывался снова.

  2. Существует ли какой-либо метод жизненного цикла между onStop () и onCreate (), который я могу использовать.

PS — Я не хочу, чтобы вызывался метод onConfigurationChange (), поскольку я хочу, чтобы действие было воссоздано.

Комментарии:

1. Из того, что я получаю, либо сделайте Activity так, чтобы программа просмотра pdf не расширялась CustomActivity , либо переместите «закрытую» часть CustomActivity в отдельный метод и вызовите его у каждого потомка Activity onStop() , за исключением того, у которого есть программа просмотра pdf, чтобы разрешить его воссоздание в соответствии с Activity жизненным циклом.

2. Или сделайте CustomActivity так, чтобы только «очищал весь кеш» onStop() и другой, который расширяется CustomActivity и «выключается» onStop() (назовем это CustomActivity2 ). Затем сделайте действие «a-pdf-viewer» расширенным CustomActivity , в то время как другие расширяются CustomActivity2 .