如何回到 android 中的主要 activity?
how back to the main activity in android?
我有一个 MainActivity
"A",它有一个启动按钮 activity "B",activity "B" 有另一个按钮发射 activity "C"。在活动 B 和活动 C 中,都有 onBackPressed()
方法,其中出现 AlertDialog
询问用户是否要 return 到 MainActivity
。如果他们按是,程序应该显示 MainActiviy。
问题是:在activityB,我没有问题,直接调用finish()
方法,出现MainActivity
,问题在activity C、如果我调用一个finish()
方法,程序回到activity B.如何从activity回到MainActivity
C??
在 activity B 和 C 的清单文件中使用以下内容:
<activity android:name=".ActivityB"
android:parentActivityName=".MainActivity"/>
<activity android:name=".ActivityC"
android:parentActivityName=".MainActivity"/>
您可以尝试 ActivityCompat.finishAffinity 并在您的 Activity C 上启动 MainActivity。
在 BackPressed 上试试这个:
Intent intent = new Intent(getApplicationContext(), MainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
这会清除 activity 堆栈并打开您的主 activity。无论你是哪个 activity,你总是会回到主 activity 并且所有其他活动都从堆栈中删除。
我有一个 MainActivity
"A",它有一个启动按钮 activity "B",activity "B" 有另一个按钮发射 activity "C"。在活动 B 和活动 C 中,都有 onBackPressed()
方法,其中出现 AlertDialog
询问用户是否要 return 到 MainActivity
。如果他们按是,程序应该显示 MainActiviy。
问题是:在activityB,我没有问题,直接调用finish()
方法,出现MainActivity
,问题在activity C、如果我调用一个finish()
方法,程序回到activity B.如何从activity回到MainActivity
C??
在 activity B 和 C 的清单文件中使用以下内容:
<activity android:name=".ActivityB"
android:parentActivityName=".MainActivity"/>
<activity android:name=".ActivityC"
android:parentActivityName=".MainActivity"/>
您可以尝试 ActivityCompat.finishAffinity 并在您的 Activity C 上启动 MainActivity。
在 BackPressed 上试试这个:
Intent intent = new Intent(getApplicationContext(), MainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
这会清除 activity 堆栈并打开您的主 activity。无论你是哪个 activity,你总是会回到主 activity 并且所有其他活动都从堆栈中删除。