我在应用程序的每个屏幕中添加了操作栏。对于向上导航,我添加了以下代码。
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
NavUtils.navigateUpFromSameTask(this);
return true;
.............
}
return super.onOptionsItemSelected(item);
}
现在我有四个活动,A,B,C和D。在清单中,我还提到 C 是 D 的父活动,B 是 C 的父活动,依此类推。当我以相同的顺序启动 A、B、C、D 并希望从 D 返回到 C,然后从 C 返回到 B 等等时,我不想再次重新创建活动。我只想像后退按钮操作一样恢复它们。但是上面的代码正确地将控件带到父活动,但重新创建它们。我的代码中有什么问题?
Intent parentIntent = NavUtils.getParentActivityIntent(MyActivity.this);
parentIntent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP
| Intent.FLAG_ACTIVITY_CLEAR_TOP);
NavUtils.navigateUpTo(this, parentIntent);