Кнопка «Назад» возвращает меня на главный экран вместо предыдущей активности - PullRequest
0 голосов
/ 11 января 2019

Я пытаюсь добавить действия по входу / регистрации в свое приложение, но я новичок в разработке для Android, поэтому я не уверен, как мне следует это делать.

Текущая логика, которую я получил:

Приложение открывается на MainActivity, MainActivity немедленно запускает LoginActivity:

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        startActivity(
            Intent(baseContext, LoginActivity::class.java).addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY)
        )
        finish()
    }
}

LoginActivity имеет форму входа и кнопки регистрации / забытого пароля. Когда кнопка регистрации нажата, я запускаю функцию RegisterActivity:

private fun handleRegisterClick() {
    startActivity(Intent(baseContext, RegisterActivity::class.java))
}

Проблема, с которой я сталкиваюсь, заключается в том, что когда я нажимаю кнопку возврата Android в RegisterActivity, она возвращает меня на домашний экран, а не обратно на LoginActivity. Почему это происходит?

1 Ответ

0 голосов
/ 11 января 2019

Поскольку вы добавили строку .addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY), которая применяется к Намерению, с которого вы начинаете LoginActivity, а не к Активности, в которой вы находитесь. Звонок, который вы сделали finish(), гарантирует, что MainActivity нет места для перехода назад, когда вы нажимаете кнопку возврата.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...