我的Android应用程序实际上有点问题。带导航抽屉的片段导航
我的应用程序包含一个导航抽屉,用于在应用程序内导航。 对于实施例
导航抽屉:
- 概述
- 搜索
- 用户
- 东西
当应用启动时,我将加载概述片段。 如果用户点击的其他物品,我将与改变的片段:
final FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
transaction.replace(R.id.frame_container, fragment, TAG);
transaction.addToBackStack(null);
transaction.commit();
问题是现在,当用户切换,例如,从1> 2> 4> 3并且将它们推压背面关键,它会给他带来只有一个片段。 3> 4> 2> 1
所以我添加了代码,这会将他带回到每个Backpress上的片段1。
public boolean onKeyDown(int keyCode, KeyEvent event) {
int exit = 0;
if (keyCode == KeyEvent.KEYCODE_BACK) {
getFragmentManager().popBackStack();
FragmentManager fm = getSupportFragmentManager();
Fragment fragment = new Overview();
fm.beginTransaction().add(R.id.frame_container, fragment).addToBackStack("fragBack").commit();
return false;
}
return false;
}
好吧,首先这是罚款,但现在我更增添了几分片段在更深的层次,但他们should't回去片段1背面按。
对于实施例
- 概述(主碎片)
- 搜索(后退键返回到片段1)
- 用户(返回键返回到片段1)
- 东西(返回键返回到片段1)
4.1详细信息(返回键返回到片段4.东西)< 4.1.1更多详细信息(B ack Key回到片段4.1)
如果有人有一个想法我会如何处理我的应用程序中的导航会很好。
Greetz
是否有特定的原因使后退按钮的行为像这样?通常用户会希望后退按钮将它们带到前一个屏幕,而不是主屏幕。 – juunas
'交易。替换“将删除您当前的片段并添加新的片段。在进入更深层次的片段时,应该使用'transaction.add',以便将其添加到堆栈中。 – CodeMonkey
是的,应用程序的主要活动是概述,如果您从概览转到设置,然后转到搜索,则不想返回到设置,如果按回 – AllesFAM