隐藏登录活动

时间:2012-02-06 05:23:26

标签: android

我有LoginActivity检查SharedPreferences的登录详细信息,然后重定向到HomeActivity和其他活动。我已经在每个活动上放置了菜单项注销,并在注销按钮上使用了此代码。

intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 

如何隐藏登录活动,以便当用户从主屏幕按回按钮时,它将关闭应用程序。

就像当我打开应用程序时它显示主屏幕,当我正常按回按钮时它应该关闭应用程序。但在我的情况下,它将我带到登录屏幕,这是第一个检查用户凭据的屏幕。

我无法结束Login活动,否则该解决方案无效。

我是Android新手。请提出解决此问题的建议。

3 个答案:

答案 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)

您可以覆盖后退按钮按键事件,并在按下时关闭应用程序。