我有一个Activity AActivity A调用fragmentfrag1frag1调用fragmentfrag2。最后frag2调用frag3
当我单击frag3中的按钮时,我想调用frag1,传递并解析从frag3frag1的对象。我试着用一个从frag3发送到frag1的对象包来实现这一点。
我看到有一个popBackStack()方法。但是,我有点搞不懂这是怎么回事。使用这种方法安全吗?
我不知道怎么做。
提前谢谢。

最佳答案

使用本地广播。
在片段1上写入广播接收器,
在片段3的apply按钮上,广播数据,然后弹出片段3
示例-

private final BroadcastReceiver myLocalBroadcastReceiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
           ;

            Bundle bundle = intent.getExtras();

            if (bundle != null) {

             get data from bundle



            }



    };

在片段3(应用按钮)上:
      Intent localBroadcastIntent = new Intent(Constant.MY_ACTION);


        Bundle bundle = new Bundle();
        bundle.put("your data);

        localBroadcastIntent.putExtras(bundle);

        LocalBroadcastManager myLocalBroadcastManager =           LocalBroadcastManager.getInstance(getActivity());
        myLocalBroadcastManager.sendBroadcast(localBroadcastIntent);





        getActivity().getSupportFragmentManager().popBackStack();

关于android - 具有传递解析对象的popBackStack,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32449812/

10-08 20:41