为什么我无法在我的应用程序中注销?

时间:2012-10-12 14:19:29

标签: android

关于App:

  1. 有一个TabActivity有5个子活动(说A,B,C,D,E)
  2. 应用程序中有一个顶栏,也有5个选项(Say ta,tb,tc,td,te)
  3. 单击顶部菜单时打开下拉列表(作为对话框的活动)包含所有应用程序选项,包括“注销”。
  4. 当我点击退出时,它会进入登录界面但是如果按下后退按钮,Tab子活动打开[说从B移动(这是Tab的childeActivity到任何) - >如果用户按下注销,则此活动中的正常活动(此处有顶部栏)]。 登录屏幕打开,但如果按回B打开。我已经尝试了3种方法,直到现在,任何人都建议我,我已经尝试过这种方式对我不起作用:
  5. 1 -

    objeditor.putString(AppConstants.USER_ID,"");
    objeditor.commit();
    Intent i=new Intent(MoreActivity.this, Login.class);//use ApplicationContext() as well  
    i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
    startActivity(i);
    finish();   
    

    2 -

    Intent i=new Intent(MoreActivity.this, Login.class);
    for(int index=0;index<AppConstants.objactivity.size();index++)
    {
        if(AppConstants.objactivity!=null && AppConstants.objactivity.get(index)!=null)
        {
            AppConstants.objactivity.get(index).finish();   
        }
    }
    AppConstants.objactivity.clear();
    startActivity(i);
    

    请有人建议我提前谢谢

1 个答案:

答案 0 :(得分:0)

试试这个:

startActivity(new Intent(MoreActivity.this, LoginActivity.class)
            .setFlags(Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS
                        | Intent.FLAG_ACTIVITY_NO_HISTORY
                        | Intent.FLAG_ACTIVITY_CLEAR_TOP
                        | Intent.FLAG_ACTIVITY_CLEAR_TASK ));
finish();