2012-03-15 84 views
0

我正在编写一个应用程序,其中有5个活动A,B,C,D,E,F.Activity A是用户登录时的登录屏幕A调用具有四个选项卡的屏幕,每个选项卡都有一个屏幕。我想要当用户从登录屏幕移动到活动B时,按下后退按钮不应进入登录屏幕直到不注销。Android从活动问题退回

我的标签活动有四个屏幕,如第一个是监控,其他的是聊天,操作员和控件。我想按回来按钮不会到第一个登录屏幕,直到注销,这怎么可能。

其实我想直到用户注销后退按钮来到监控屏幕后login.If用户关闭应用程序使用home按钮,然后再次启动应用程序来到监控窗口而不是登录screen.how这可能。

+0

得到解决problem.thanks大家......... – nikki 2012-03-15 08:10:31

回答

0

你应该说完成(),然后转到你的下一个活动从loginscreen

//你的点击

完成();

Intent i = new Intent(getApplicationContext(),NextActivity.class) startActivity(i);

从您最后一次说i.addFlags(Intent.FLAG_NO历史)和呼叫loginscreen

+0

我使用的方法,因为你告诉,但使用这个按下按钮活动正在完成,当我再次启动活动来login.i要活动是完成但当我再次启动它来到监视窗口,而不是登录屏幕,直到注销。 – nikki 2012-03-15 08:00:18

0

重写此方法:

@Override 
public void onBackPressed(){ 

.... 
} 
+0

其实我想,直到用户注销逼人退按钮来到登录后出现的监视屏幕。如果用户使用主页按钮关闭应用程序,然后再次启动应用程序来到监视窗口而不是登录屏幕,如何才能这样做。 – nikki 2012-03-15 07:49:36

0

您必须覆盖其他活动的onkeydown方法。

@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) { 
    if (keyCode == KeyEvent.KEYCODE_BACK) { 
     // check whether user logged out or not and react accordingly. 
     return true; 
    } 
    return super.onKeyDown(keyCode, event); 
} 

我希望它可以帮助你。

+0

我使用相同的,但问题是一样的..... – nikki 2012-03-15 07:50:45