2017-09-16 93 views
0

我有一個關於在Android Studio中的活動的結束()方法的問題:結束()完成的活動,但它仍然是在背景

我有這個簡單的代碼:

public class MainActivity extends AppCompatActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     findViewById(R.id.button).setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       finish(); 
      } 
     }); 
    } 
} 

在我的activity_main我只是有一個按鈕。當我點擊按鈕時,活動結束,我回到設備的主屏幕......但是,當我點擊設備的菜單按鈕(顯示所有在後臺運行的應用程序)時,我仍然可以看到我的活動...我不想那樣。我該如何解決它?

+1

「但是,當我點擊設備的菜單按鈕(顯示所有在後臺運行的應用程序)」 - 不,它不。它顯示了最近的任務。這些都不一定「運行」,因爲沒有必要有一個運行過程。 「我不想那樣」 - 爲什麼?或者,更準確地說,爲什麼你的*用戶不需要那個? – CommonsWare

+0

[什麼Activity.finish()方法正在做什麼?](https://stackoverflow.com/questions/10847526/what-exactly-activity-finish-method-is-doing) – 2017-09-16 14:42:18

+0

對CommonsWare:其實我有另一個比這個更發達的應用程序有這個問題。這個應用程序是一個鬧鐘,我有一個按鈕完成。當屏幕鎖定時,警報的活動會在警報發生時顯示。當我按下按鈕時:「完成警報」,警報完成,但它是在最近的任務(謝謝你btw這個解釋!)。當我點擊它時,它又響了起來......我希望我清楚 –

回答

2

嘗試AndroidManifest.xmlActivity使用

android:excludeFromRecents="true"

<activity 
      ... 
      android:excludeFromRecents="true"> 
</activity> 
+0

Thx!這解決了我的問題! –

+0

不客氣:) – mohnage7

相關問題