2013-12-12 185 views
2

我有兩個活動Login和Main,當用戶啓動應用程序時,Main活動啓動並驗證用戶是否登錄,如果沒有,應用程序將用戶重定向到登錄活動。

所有的工作正常,但當後退按鈕單擊登錄活動的應用程序啓動活動的主要問題,我想要應用程序退出..
請任何幫助。Android:關閉登錄活動開始時的所有活動

+2

調用完成()當您重定向它來登錄活動。 .. – Vikram

+1

使用標誌即FLAG_ACTIVITY_CLEAR_TOP或FLAG_ACTIVITY_SINGLE_TOP –

+0

這些標誌清除堆棧 –

回答

4
   Intent i = new Intent(First_screen.this, Second_screen.class); 
       i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP); 
       startActivity(i); 
       finish(); 

,當你去second_screen ..它會在此之前,清除所有其他活動..移動登錄活動 之前,你的主要活動的

2

在聲明您的Activity時,您可以將android:noHistory =「true」添加到AndroidManifest.xml中,這是執行此操作的一種方法。

例子:

<activity 
    android:name=".LoginActivity" 
    android:noHistory="true" /> 
0

檢查對象實例確保沒有活動的活動,然後才意圖登錄您的活動並不確定您是否可以定義該活動的實例

On mainactivity.class

public static MainActivity maininstance = MainActivity.this;

在我登錄活動回到按

@Override 
public void onBackPressed() 
{ 
    if(MainActivity.mainInstance!=null) 
    { 
     MainActivity.mainInstance.finish(); 
    } 
    LoginActivity.this.finish(); 

} 

希望這將幫助你

0

它爲我添加

i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP); 
+0

這不提供問題的答案。一旦你有足夠的[聲譽](https://stackoverflow.com/help/whats-reputation),你將可以[對任何帖子發表評論](https://stackoverflow.com/help/privileges/comment);相反,[提供不需要提問者澄清的答案](https://meta.stackexchange.com/questions/214173/why-do-i-need-50-reputation-to-comment-what-c​​an- I-DO-代替)。 - [來自評論](/ review/low-quality-posts/18173156) – ddarellis