我有LoginActivity检查SharedPreferences的登录详细信息,然后重定向到HomeActivity和其他活动。我已经在每个活动上放置了菜单项注销,并在注销按钮上使用了此代码。
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
如何隐藏登录活动,以便当用户从主屏幕按回按钮时,它将关闭应用程序。
就像当我打开应用程序时它显示主屏幕,当我正常按回按钮时它应该关闭应用程序。但在我的情况下,它将我带到登录屏幕,这是第一个检查用户凭据的屏幕。
我无法结束Login活动,否则该解决方案无效。
我是Android新手。请提出解决此问题的建议。
答案 0 :(得分:6)
你应该在你家的Activity的后退键功能上试试这个:
onBackpress(){
Intent intent = new Intent(mContext, LoginActivity.class);
intent.putExtra("FLAG", 0);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
startActivity(intent);
}
并在您的LoginActivity上执行:
onNewIntent(Intent intent){
int i = intent.getIntExtra("FLAG", 0);
if(i == 0)
finish();
}
请记住,sendE中活动的launchMode应该是singleTop。
答案 1 :(得分:4)
覆盖Activity.onBackPressed()方法,然后通过Intent将应用程序发送回家。
从SDK:
具有以下类别的意图将允许您回家。
带有CATEGORY_HOME类别的ACTION_MAIN - 启动主屏幕。
答案 2 :(得分:1)
您可以覆盖后退按钮按键事件,并在按下时关闭应用程序。