2015-10-21 214 views
3

我有一个MainActivity“A”,其中有一个按钮,启动活动“B”和活动“B”有另一个按钮启动活动“C”。在活动B和C中,都有onBackPressed()方法,该方法出现AlertDialog,询问用户是否想要返回到MainActivity。如果他们按是,程序应该显示MainActiviy。如何回到android的主要活动?

的问题是:在活动B,我还没有问题,只需调用finish()方法,并出现MainActivity,但问题是在活性C,如果我调用一个方法finish(),程序返回到活动B.如何回到MainActivity从活动C?

回答

3

<activity android:name=".ActivityB" 
      android:parentActivityName=".MainActivity"/> 
<activity android:name=".ActivityC" 
      android:parentActivityName=".MainActivity"/> 
+0

工作!谢谢!! –

2

使用清单档案中的该活动B和C如下:C.

0

你可以尝试ActivityCompat.finishAffinity,并在你的活动开始MainActivity试试这个你onBackPressed:

Intent intent = new Intent(getApplicationContext(), MainActivity.class); 
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
startActivity(intent); 

这会清除活动堆栈并打开您的主要活动。无论您是哪一项活动,您都会一直回到主要活动,并将所有其他活动从堆栈中移除。

相关问题