![](/img/trans.png)
[英]Android, what happens to the previous activity on the back-stack on activity finish()?
[英]How to clear all previous back-stack of Activities in android?
我想清除所有先前的活動堆棧並啟動新的活動。 但是,當我按返回鍵時,控制權轉到先前的活動。 我尚未完成之前的所有活動。 當我注銷時,我想退出應用程序。 我用下面的標志:
intentLogin.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intentLogin.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intentLogin.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
intentLogin.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
並在AndroidManifest.xml中添加以下行
android:launchMode="singleInstance"
但是在啟動新活動之前會出現白屏。
我也將主題更改為半透明,但是在啟動活動時,但有一段時間顯示了Android主頁圖標。
我不想使用:
moveTaskToBack(true);
只是故意設置此標志,
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
我希望這能幫到您
logoutButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
SharedPreferences myPrefs = getSharedPreferences("Activity",
MODE_PRIVATE);
/*AppState.getSingleInstance().setLoggingOut(true);*/
setLoginState(true);
Log.d(TAG, "log out and go to first activity");
Intent intent = new Intent(HomePage.this,
LoginPage.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
/* intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK |
Intent.FLAG_ACTIVITY_CLEAR_TASK);*/
startActivity(intent);
finish() // finish this activity
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.