Android 如果从backstack中删除片段后有多个片段,那么运行哪个方法

Android 如果从backstack中删除片段后有多个片段,那么运行哪个方法,android,android-fragments,Android,Android Fragments,如果有多个片段一个接一个,在从堆栈中移除一个片段后,下面的片段中运行哪个方法 这就是节目中发生的事情, 片段A调用->片段B 然后我移除片段B,现在它在片段A中,我想在片段A中运行一个方法 我在片段A中尝试了恢复,但它不起作用。任何人都可以建议一种实现这种方法的方法。您可以使用在片段之间进行通信,也可以使用广播接收器 要使用回调 在片段B中声明一个这样的接口 public interface OnFragmentInteractionListener { // TODO: Update

如果有多个片段一个接一个,在从堆栈中移除一个片段后,下面的片段中运行哪个方法

这就是节目中发生的事情, 片段A调用->片段B

然后我移除片段B,现在它在片段A中,我想在片段A中运行一个方法

我在片段A中尝试了恢复,但它不起作用。任何人都可以建议一种实现这种方法的方法。

您可以使用在片段之间进行通信,也可以使用广播接收器

要使用回调

在片段B中声明一个这样的接口

 public interface OnFragmentInteractionListener {
    // TODO: Update argument type and name
    public void myMethod();
 }
同样在片段B中,创建OnFragmentInteractionListener的全局实例:

 private OnFragmentInteractionListener mListener;
然后,只要想调用片段A中的方法,就使用:

mListener.myMethod();
现在,在片段A中,我们需要提供myMethod并从片段B实现我们的侦听器:

public class FragmentA extends Fragment implements FragmentB.OnFragmentInteractionListener
并且在片段A中提供方法

public void myMethod(){
 //Hello World
}

下面的片段如何知道删除了上面的片段。可以使用回调来识别它吗?您希望片段A做什么?我有自定义actionbar。这两个片段在动作栏中使用相同的后退按钮。我创建的每个片段都会单击该按钮的侦听器。所以,在我移动到片段B和片段A之后,我想调用片段A相关的onclick侦听器。否则它仍然会占用片段B的侦听器并崩溃。因此,让片段A侦听器也调用myMethod,然后从片段B调用它mListener.myMethod返回单击侦听器当我尝试您的方法时,它会出现空指针异常。你确定上面的方法正确吗