Android 将数据从一个片段传输到另一个片段

Android 将数据从一个片段传输到另一个片段,android,android-fragments,fragment,android-fragmentactivity,Android,Android Fragments,Fragment,Android Fragmentactivity,我正在开发一个应用程序,其中我使用了底部导航栏,因此我不得不使用片段。在我的片段中,我实现了回收器视图。因此,我的问题是,当我单击recycler视图的一个项目时,如何导航到另一个片段(位于底部导航栏的另一个项目中),以及如何在两个片段之间传输数据。请提供帮助。在onClick()过程中,通过bundle传递数据 那样 FragmentManager mFragmentManager; FragmentTransaction mFragmentTransaction;

我正在开发一个应用程序,其中我使用了底部导航栏,因此我不得不使用片段。在我的片段中,我实现了回收器视图。因此,我的问题是,当我单击recycler视图的一个项目时,如何导航到另一个片段(位于底部导航栏的另一个项目中),以及如何在两个片段之间传输数据。请提供帮助。

在onClick()过程中,通过bundle传递数据

那样

FragmentManager mFragmentManager;
FragmentTransaction mFragmentTransaction;
                    Bundle bundleobj = new Bundle();
                    bundleobj.putCharSequence("key", data);


                    Fragment2 fragobj = new Fragment2();
                    fragobj.setArguments(bundleobj);
                    mFragmentTransaction.addToBackStack(null);
                    mFragmentTransaction.replace(R.id.containerView, fragobj).commit();
在Fragment2类中:

@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    Bundle bundle =getArguments();

    if(null!=bundle) {
        myData=bundle.getCharSequence("key");


    }
}
在第一段中

Fragment fragment = new EditExamFragment();
            FragmentManager fm = getActivity().getSupportFragmentManager();
            FragmentTransaction ft = fm.beginTransaction();
            ft.replace(R.id.content_frame, fragment);
            ft.commit();

            Bundle bundle = new Bundle();
            bundle.putString("branch_id", mDataset.get(position).getiBranchId());

          bundle.putString("exam_id",mDataset.get(position).getiExamId());
            fragment.setArguments(bundle);
在用于获取值的第二个片段中,请尝试下面的代码

String branch_id, exam_id ;
final Bundle bundle = this.getArguments();
if (bundle != null) {
    branch_id  = bundle.getString("branch_id");           
    exam_id  = bundle.getString("exam_id");
}

在fragment1中的事件侦听器之后添加以下代码

SecondFragmentName secondFragmentName = new SecondFragmentName();
                Bundle args = new Bundle();
                args.putString("key", "value");
                secondFragmentName.setArguments(args);
                getFragmentManager().beginTransaction().replace(R.id.content_frame, secondFragmentName).addToBackStack("Some string").commit();
在Fragment2中获取价值

String message = getArguments().getString("key");

适配器类是否有任何用途?否…两个片段之间数据传输的jst exmaple。