我的活动包含导航视图和片段。
我正在谈论的片段是这样的 - 活动< - Frag1直接附加到Activity< - Frag2获取其空间,当Frag1上的用户希望这意味着某些用户操作时。
当我从frag1移动到frag2时,我想将汉堡包图标替换为后退按钮,这是我实现的,但只是更改了图标。 frag2中的后退按钮就像汉堡包图标一样。
但我希望它表现为一个后退按钮,它将我从frag2带到frag1。 不知何故,我实现了从frag2转移到frag1的过程,但汉堡包的功能却丢失了。 我这样做的方式是 -
在主要活动中存在这种方法,我可以从frag2 ...
public void setHomeListener(View.OnClickListener listener){
toolbar.setNavigationOnClickListener(listener);
}
这就是我从frag2上面调用的方式......
((MainActivity)getActivity()).setHomeListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getActivity(), "Hello Boy2!!", Toast.LENGTH_SHORT).show();
((MainActivity)getActivity()).setHomeListener(null);
}
});
这样做之后我完全放松了汉堡包图标的抽屉功能。 请告诉我如何解决这个问题。
正确的方式 -
public void setHomeListener(View.OnClickListener listener){
toggle.setNavigationOnClickListener(listener);
}