![](/img/trans.png)
[英]Android activity go back to activity that started it instead of parent activity when pressing navigation bar back button
[英]Error when pressing “Up Navigation Button” on Action Bar and returning to the parent Activity
我是Android世界的新手。 我有一个活动( PartyActivity ),显示有关聚会的一些信息。 按下按钮“编辑”将启动一个新活动( EditPartyActivity ),该活动允许用户编辑聚会的信息。 EditPartyActivity在其操作栏上具有向上导航按钮,该按钮允许用户返回PartyActivity ,这是我的问题。 当我回到PartyActivity时,它是从零开始创建的,而不是恢复原来的状态。 我希望当PartyActivity启动EditPartyActivity时,它将停止保存他的状态,而当我从EditPartyActivity返回PartyActivity时 ,它不会启动PartyActivity的新实例,而是恢复启动它的旧PartyActivity 。 这是我的代码:
AndroidManifest
<activity
android:name=".EditPartyActivity"
android:screenOrientation="portrait"
android:parentActivityName=".PartyActivity">
<!-- Parent activity meta-data to support 4.0 and lower -->
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value=".PartyActivity" />
</activity>
PartyActivity
Intent i = new Intent(PartyActivity.this, EditPartyActivity.class);
startActivity(i);
在“ startActivity(i)”之后没有“ finish()”。
通过在清单中指定父活动名称,它将始终设置要重新启动的父活动。 如果您不希望这样做,可以选择为“向上”按钮提供其他功能,如下所示。 理想情况下,您希望在基本活动中执行此操作,以便所有需要类似后向行为的活动都执行相同的操作,而不是在每个活动中都放在下面的代码中。
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home://user clicked up button
finish();
return true;
}
return super.onOptionsItemSelected(item);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.