У меня есть два действия (LoginActivity и MainActivity), причем LoginActivity является MAIN и LAUNCHER в файле манифеста Android. После запуска приложения я не хочу возвращаться к LoginActivity, даже когда нажата кнопка «Назад». Как я могу гарантировать, что MainActivity станет основным/домашним действием, хотя его нет в манифесте как MAIN во время выполнения.
Как изменить основную активность во время выполнения
Ответы (3)
Просто вызовите метод finish()
класса Activity
при успешном входе в систему. Вы никогда больше не увидите этот Activity
в своем приложении (очевидно, вам придется применять логику, чтобы он снова отображался, когда какой-либо пользователь выходит из системы)
Сделайте это так, когда пользователь аутентифицируется правильной комбинацией имени пользователя и пароля
Intent i=new Intent(LogInActivity.this,HomeActivity.class);
startActivity(i);
finish();
Затем предыдущее действие (LogInActivity
) будет завершено.
person
nobalG
schedule
08.08.2014
Просто используйте finish()
класса activity
после запуска нового намерения на LoginActivity
Intent intent = new Intent(this, HomeActivity.Class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
finish(); // Call once you redirect to another activity
person
KunamiPT
schedule
08.08.2014
попробуйте добавить android:noHistory="true" в тег <activity>
в XML-файле манифеста Android
person
Marcin Mikołajczyk
schedule
08.08.2014
android:noHistory="true"
в тег действия, или завершите действие один раз, когда вы переходите к следующему действию. - person Yugesh   schedule 08.08.2014