Android 如何只为一个片段设置backarrow来代替汉堡包图标?

Android 如何只为一个片段设置backarrow来代替汉堡包图标?,android,Android,在MainActivity下面给出的代码的帮助下,我已经替换了所有片段中的所有汉堡图标 toggle.setDrawerIndicatorEnabled(false); toggle.setHomeAsUpIndicator(R.drawable.leftarrow); 现在,我希望返回箭头应该只出现在一个片段中,其余片段应该有汉堡包图标。我希望返回箭头所在的片段是在cardview中单击某些数据时从另一个片段重定向而来的片段。我需要在工具栏中设置返回箭头来代替汉堡包图标以导航回包含car

在MainActivity下面给出的代码的帮助下,我已经替换了所有片段中的所有汉堡图标

 toggle.setDrawerIndicatorEnabled(false);
 toggle.setHomeAsUpIndicator(R.drawable.leftarrow);

现在,我希望返回箭头应该只出现在一个片段中,其余片段应该有汉堡包图标。我希望返回箭头所在的片段是在cardview中单击某些数据时从另一个片段重定向而来的片段。我需要在工具栏中设置返回箭头来代替汉堡包图标以导航回包含cardview的上一个片段。我无法解决此问题。

尝试创建两个单独的导航栏,一个带汉堡,另一个带背面图标。然后使用它。

我想你应该把汉堡包图标放在主活动中,然后在你想要的片段的onCreateView中更改它…

像这样试试

在主活动中使用Harmburger图标,在
onCreateView
方法中调用
fragment
时,将Harmburger图标替换为反箭头。因为我有数据绑定概念,所以我使用活动绑定的引用。如果您不使用数据绑定概念,则使用活动引用并启动
ActionBarToggle
并替换图标

ActivityDashboardBinding activityDashboardBinding = DashboardActivity.getActivityDashboardBinding();

ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(getActivity(),
activityDashboardBinding.drawerLayout, activityDashboardBinding.toolbar,
        R.string.navigation_drawer_open, R.string.navigation_drawer_close);

toggle.setDrawerIndicatorEnabled(false);
toggle.setHomeAsUpIndicator(R.drawable.ic_arrow_back);

注意:在一个
片段中用反箭头替换Harmburger图标后,您需要在所有
片段中处理此问题,或者在主活动中编写一个通用静态方法。从每个
片段调用此方法,我不能使用两个单独的导航栏。我必须只使用一个默认工具栏来处理所有问题。在这种情况下请帮助我。我使用了默认工具栏。所以它给了我默认的汉堡图标,所以我不需要放在任何地方。我已经用我想要的反箭头替换了它。现在我被困在如何改变每个片段的可见性。我只需要在其他片段中单击cardview打开的片段中使用反箭头。您始终可以选择将包含数据的捆绑包传递给新创建的片段,并提及调用它的人。然后在片段中使用getArgument()将知道是谁调用了它,并更改片段中onCreateView中的图标,您需要返回箭头。希望有帮助!在MainActivity中设置工具栏,现在当您加载该片段时,将工具栏中的navigationIcon设置为back图标,当您从该片段返回时,可以再次将该图标替换为hamburger。我已经将该图标替换为backarrow图标,该图标反映在所有片段中。问题是如何只在一个片段中允许它的可见性,如何管理其他片段的可见性,如何在每个其他片段中显示汉堡图标。我只能在mainactivity中替换它,而不能在任何其他片段中替换它。所以我无法从碎片中替换。我也没有使用onbindview.yes!这就是为什么我说在activity中创建静态方法并调用所有片段,只需传递片段名称并基于片段处理图标和操作name@YeshaShah或者使用自定义工具栏,在每个片段都被删除时单独替换图标图像called@YeshaShah,我仅替换了片段oncreateview中的图标