onBackPressed()到父活动

Tam*_*oos 4 android parent parent-child android-activity

我有一个有很多活动的应用程序.在活动中,我想在按下后退按钮时返回父活动.(之前的活动和父活动不一样).我怎么能用onBackPressed做到这一点?谢谢你的提前.

MrE*_*r13 9

从文档中查看有关导航的页面.这是他们要说的话:

要在用户按下应用程序图标时向上导航,可以使用NavUtils类的静态方法navigateUpFromSameTask().当您调用此方法时,它将完成当前活动并启动(或恢复)相应的父活动.如果目标父活动位于任务的后台堆栈中,则会将其提前.它的提出方式取决于父活动是否能够处理onNewIntent()调用:

如果父活动具有启动模式,或者up intent包含FLAG_ACTIVITY_CLEAR_TOP,则父活动将被带到堆栈顶部,并通过其onNewIntent()方法接收intent.

如果父活动具有启动模式,并且向上意图不包含FLAG_ACTIVITY_CLEAR_TOP,则从堆栈弹出父活动,并在堆栈顶部创建该活动的新实例以接收意图.

编辑:

首先将父活动添加到清单:

<!-- A child of the main activity -->
<activity
    android:name="com.example.myfirstapp.DisplayMessageActivity"
    android:label="@string/title_activity_display_message"
    android:parentActivityName="com.example.myfirstapp.MainActivity" >
    <!-- Parent activity meta-data to support 4.0 and lower -->
    <meta-data
        android:name="android.support.PARENT_ACTIVITY"
        android:value="com.example.myfirstapp.MainActivity" />
</activity>
Run Code Online (Sandbox Code Playgroud)

然后NavUtils.navigateUpFromSameTask(this);按下后退按钮时调用.