Мне нужно выйти из моего приложения для Android, используя кнопку выхода в основной деятельности
Я создал два вида деятельности, а именно MainActivity и регистрацию. MainActivity используется для входа в систему, где пользователь вводит свое имя и пароль. MainActivity имеет три кнопки
- Кнопка входа
- Кнопка регистрации
- Кнопка выхода.
Когда я нажимаю кнопку входа в систему, пользователь входит в свою учетную запись, используя введенные им имя пользователя и пароль. Нажав на кнопку регистрации, вы перейдете к действиям по регистрации. Актив регистрации имеет кнопку "Назад", чтобы вернуться к основной активности. У меня есть третья кнопка выхода в основной деятельности, чтобы полностью выйти из приложения. Я создал экземпляр кнопки выхода, и в части setonclicklistener кнопки выхода я написал следующий код.
Button exit=(Button)findViewById(R.id.exit);
exit.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
finish();
System.exit(0);
}
});
Теперь, когда я сначала запускаю приложение, будет отображаться основная активность. При нажатии на кнопку регистрации отображается активность регистрации. Когда я нажимаю кнопку "Назад" в процессе регистрации, я перехожу к основной деятельности. Затем из основной активности, когда я нажимаю кнопку "Выход", приложение закрывается, и отображается начальный экран. Когда я снова открываю свое приложение, вместо просмотра основной активности я вижу регистрационную активность. Пожалуйста, помогите мне. Мне нужно увидеть основной вид деятельности, когда я снова щелкаю значок приложения вместо действия регистрации. Извините за столь длинный вопрос. Может кто-нибудь, пожалуйста, помогите мне..
4 ответа
Добавьте этот тег в файл Android Manifest.xml внутри MainActivity.
android:clearTaskOnLaunch="true"
От http://developer.android.com/guide/topics/manifest/activity-element.html о noHistory:
Попробуйте добавить это в свой файл Manifest.xml между тегами avtivity.
андроид:noHistory="истина"
Попробуйте добавить это в свою регистрационную активность:
public void onBackPressed() {
finish();
}
И просто удалите System.exit(0);
потому что вы уже назвали finish();
Начать регистрацию с помощью startActivityForResult()
API от основной активности и не нужно вызывать какую-либо активность от щелчка по обратному вызову только кнопки выхода finish()
сделаю работу...