0

请给我建议如何处理以下情况..我有一个带有导航抽屉的主活动..当用户单击抽屉中的项目时,我将当前附加的片段更改为另一个片段 - 根据按下的抽屉项目。我还想处理当用户单击与同时已附加的片段相关的项目并避免片段重新创建时的情况。

所以我想出了以下解决方案。我有一个属性,我在其中保存当前片段的 TAG。当用户点击抽屉中的任何项目时,我会检查标签是否匹配,而不是我做一个开关..我工作。

但是我有一个回栈导航的问题。当用户单击后退按钮时,我不知道如何更改 TAG 持有属性。片段正确更改,但 TAG 属性保持不变,因此一切都被破坏了(当用户单击他之前的项目时,他不会被重定向,并且在单击与从后堆栈推送的片段相关的项目后更进一步它会重新创建:/)

希望你们知道我的问题在哪里..我不在这里给出任何代码。我只是认为它没有必要,因为我的问题实际上不在我的代码的现有部分,而是在一个假设但不存在的部分:) 我只需要处理从后台推送的情况..

提前致谢!

4

1 回答 1

1

无需回调任何东西!

例如,假设您的片段在每个事务中被替换的布局是 R.id.mycontent

因此,您可以在每次单击抽屉时执行以下操作,而不是将 TAG 放在字段中:

String currentTag = getSupportFragmentManager.findFragmentById(R.id.mycontent).getTag();

并通过这个与点击的内容进行比较。

于 2013-08-27T13:09:24.607 回答