how back to the main activity in android?

会有一股神秘感。 提交于 2019-12-07 14:24:43

问题


I have a MainActivity "A", which have a button that launch activity "B", and activity "B" have another button that launch activity "C". In the activities B and C, both have onBackPressed() method, which appears an AlertDialog asking if the user wants to return to MainActivity. If they press yes, the program should show MainActiviy.

The question is: in activity B, i have not problem, simply call the finish() method, and MainActivity appears, but the problem is in activity C, if i call a finish() method, the program is back to activity B. How back to MainActivity from activity C??


回答1:


try this on you onBackPressed:

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

this clears the activity stack and opens your main activity. No matter which activity you are, you will always go back to the main activity and all other activities are removed from the stack.




回答2:


Use the following in your manifest file for the activity B and C:

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



回答3:


You can try ActivityCompat.finishAffinity and start MainActivity at your Activity C.



来源:https://stackoverflow.com/questions/33249006/how-back-to-the-main-activity-in-android

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!