Ответ 1
В первую очередь сама кнопка "Назад" сама вызывает метод finish()
. Если вы определяете метод onBackPressed()
в своей деятельности, это означает, что вы переопределяете поведение backbutton по умолчанию, когда метод onBackPressed()
вызывается при нажатии кнопки возврата.
Теперь, нужно ли создавать один экземпляр действия или нет, зависит от вашего требования, например. заставка может быть сделана из одного экземпляра, поскольку она будет видна только один раз во время запуска приложения, и нет необходимости сохранять эту активность в обратном стеке. Активность, которую вы собираетесь использовать очень часто, не должна быть одиночной. В противном случае редкой деятельностью может быть один экземпляр.
Пройдите Back Stack Documentation для получения полной информации.
Стандарти "singleTop" могут создавать экземпляры нескольких действий, и экземпляр останется в одной и той же задаче. Для "singleTask" или "singleInstance" класс активности использует шаблон singleton, и этот экземпляр будет корневой активностью новой задачи.