我想对主页按钮进行编程,因此它将删除堆栈中的所有 Activities
,除了一个。我在这里这样做:How to finish every activity on the stack except the first in Android
public boolean onOptionsItemSelected(MenuItem item) {
int itemId = item.getItemId();
switch (itemId) {
case android.R.id.home:
Intent intent = new Intent(this, AMainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
break;
...
但这种方式不适合我,因为它会删除所有 Activities
(包括第一个)并再次启动第一个。例如 - 如果我在 onCreate()
中检查用户密码,他会再次被询问。
如何从堆栈中删除所有 Activities
,但第一个不会被“触及”?
最佳答案
将以下属性添加到 manifest.xml 中的 AMainActivity 的 Activity 标记。
android:launchMode="singleTop"
关于java - 删除除第一个以外的所有 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14758002/