Мне кажется, я понял жизненный цикл Activity на Android, но до сих пор не могу понять, почему происходит следующее.
- Активность входа - Экран входа в систему
- Основная деятельность - Основной интерфейс приложения
В разделе «Вход в систему» я подключаюсь к службе для подтверждения входа в систему. Если пароль правильный, я переключаюсь на Основное действие, используя:
Intent intent = new Intent(this, MainActivity.class);
startActivity(intent);
Меню активности в разделе Действия при входе отсутствует.
У меня есть меню «Параметры» в разделе «Основная деятельность», которым я надуваюсь:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.option, menu);
return true;
}
Пока все хорошо. Но я хочу, чтобы пользователь мог выйти из системы и вернуться к экрану входа.
Итак, в разделе «Основное действие» в меню есть опция, которая позволяет выйти из системы:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle item selection
switch (item.getItemId()) {
case R.id.menuReset:
getModel().deleteCredentials // stuff to logout from my service
startActivity(new Intent(this, LoginActivity.class));
finish();
return true;
}
}
Если я нажму эту кнопку меню, приложение снова отобразит активность входа в систему. Но если я нажму клавишу MENU, приложение отобразит меню из раздела «Основные действия», даже если оно не отображается.
Кроме того, если я вернусь на домашний экран (нажав ДОМОЙ) и через некоторое время вернусь к своей активности, приложение отобразит активность входа в систему, но если я нажму клавишу МЕНЮ, по-прежнему будет отображаться главное меню приложения.
Как удалить меню из активности входа в систему?
Спасибо