ViewPager 内に ListFragments があり、それぞれListFragment
がアクティビティ内に含まれており、ユーザーがクリック/タップして という名前のアクティビティを開始できる独自のオプション メニュー項目がありますaddEditItem
。ここで、アクティビティでアップ ナビゲーションを提供しaddEditItem
たいと考えています。そのアクティビティでホーム ボタン (上ボタン) を押すと、ListFragment
. Fragment
アクティビティを指定できるので、を の親としてActivity
指定できるかどうかはわかりません。optionsItemSelectedItem
アクティビティ内で私が試しているのaddEditItem
は次のとおりです(ただし、これはスルーですNullPointerException at navigateUpTo
):
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
Intent upIntent = NavUtils.getParentActivityIntent(this);
if (NavUtils.shouldUpRecreateTask(this, upIntent)) {
// This activity is NOT part of this app's task, so create a new
// task
// when navigating up, with a synthesized back stack.
TaskStackBuilder.create(this)
// Add all of this activity's parents to the back stack
.addNextIntentWithParentStack(upIntent)
// Navigate up to the closest parent
.startActivities();
} else {
// This activity is part of this app's task, so simply
// navigate up to the logical parent activity.
Log.i(MyConstants.LOG_TAG, "navigate up to");
try {
NavUtils.navigateUpTo(this, upIntent);
} catch (Exception e) {
e.printStackTrace();
}
}
return true;
default:
break;
}
return super.onOptionsItemSelected(item);
}