我有两个活动。说Activity A
和Activity B
。
从Activity A
我点击一个按钮即可启动Activity B
这是我用这个代码:如何恢复活动,而不是重新启动时,从行动栏“上”
Intent intent = new Intent(this, ActivityB.class);
this.startActivity(intent);
现在,在这一点上,我在
Activity B
。在
Activity B
的创建方法上,我启用了向上按钮。
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_view_news);
getActionBar().setDisplayHomeAsUpEnabled(true); //Here//
}
,并就“向上”按钮事件句柄,我有这样的代码:
public boolean onOptionsItemSelected(MenuItem item){
switch (item.getItemId()) {
case android.R.id.home:
finish();
NavUtils.navigateUpFromSameTask(this);
default:
return super.onOptionsItemSelected(item);
}
}
现在我决定回去
Activity A
我点击操作栏中的向上按钮它看起来像这样:
现在的问题是,当我点击“向上按钮”,它可以追溯到Activity A
这是很好的,但它重新启动吧。如何使它停止重新启动?我只是想要它简历。
当我使用我的硬件后退按钮时,它按预期工作。即它转到Activity A
并恢复它而不是重新启动它。
我希望我的活动恢复,因为在该活动中,我在网上下载一些字符串,所以我不希望它不断重新下载数据时,用户活动B老话 - >活动A
编辑我对
Activity B
部分清单文件看起来是这样的:
<activity
android:name="com.example.android.ActivityB"
android:label="@string/title_activity_view_news"
android:parentActivityName="com.example.android.ActivityA">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.example.android.ActivityA" />
</activity>
编辑2 [答案] 好了,所以,这是PRET ty意外,但在我的AndroidManifest.xml中的Activity A部分中,我不得不添加下面的行代码。
android:launchMode="singleTop"
所以现在看起来是这样的:
<activity
android:name="com.example.android.ActivityA"
android:label="@string/app_name"
android:launchMode="singleTop"> //**HERE**//
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
The explanation to this is given here
是你声明ActivityA作为家长的活动? –
@mohammedmomn我相信我已经这么做了。检查我的'AndroidManifest.xml'我发布在我的问题末尾 – Krimson
不知道这是你需要的,但你可以看看:http://stackoverflow.com/a/16147110/3286163 – singularhum