Activity A启动Activity B。在Activity B中,我有这个方法:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == android.R.id.home) {
// This ID represents the Home or Up button. In the case of this
// activity, the Up button is shown. Use NavUtils to allow users
// to navigate up one level in the application structure. For
// more details, see the Navigation pattern on Android Design:
//
// http://developer.android.com/design/patterns/navigation.html#up-vs-back
//
NavUtils.navigateUpTo(this, new Intent(this,
ArticleListActivity.class));
return true;
}
return super.onOptionsItemSelected(item);
}
当我按下主页按钮时,它会带我到Activity A,这是应该的。然而,onCreate又被调用了一次。我不想要这种行为。
我猜测这是因为此实现在导航堆栈中使用新的Intent到先前的项。虽然这只是我从Eclipse创建双面板项目时获得的代码。我在Stack Overflow上查看了一些东西,尽管看起来使用Intent返回导致了这种行为,但我不明白Google为什么会在默认模板中提供这个。
当回到Activity A时,我该如何更改此调用,以便不再调用onCreate?