【发布时间】:2015-05-10 06:46:34
【问题描述】:
我发现之前问过类似的问题并尝试了一些;但不适合我。
我有一个主要活动,布局中有一个片段容器。我有 3 个片段将根据抽屉式导航选择替换为片段容器。我正在将所有交易添加到后台堆栈。
我想将带有 Tracker 片段的活动设置为主屏幕,这样当用户按下返回按钮时,他应该转到第一个片段。如果他已经在第一个片段中,则应用程序应该退出。
这是我的代码:
@Override
public void onNavigationDrawerItemSelected(int position) {
// update the main content by replacing fragments
fragmentManager = getFragmentManager();
Fragment fragment;
switch (position){
case 0:
fragment = TrackerFragment.newInstance(position);
break;
case 1:
fragment = CalendarViewFragment.newInstance(position);
break;
case 2:
fragment = SettingsFragment.newInstance(position);
break;
default:
fragment = TrackerFragment.newInstance(position);
}
fragmentManager.beginTransaction()
.replace(R.id.container, fragment).addToBackStack(null)
.commit();
}
我不确定如何在 OnBackPressed 方法上处理这种情况。我应该做什么逻辑。有没有什么方法可以在不添加回栈的情况下做到这一点? 非常感谢任何帮助! 谢谢1
【问题讨论】:
标签: android navigation-drawer back-button