I want to pass data between two fragments without using activity and fragment activity.
I don't want to pass data between fragments using activity like this : Communicating with Other Fragments
Below is my scenario :
I have one Parent fragment and inside that there are two child fragments.Now my need is to pass data between these two fragments.How to achieve this?
I looked into this : Event Bus but not getting working example for fragments.
Is there any other alternative to pass data between fragments?
Any help will be appreciated.
Edited as per InnocentKiller's answer :
In FragmentOne , I have implemented :
FragmentTwo = new FragmentTwo();
Bundle bundle = new Bundle();
bundle.putString("Hello", "My name is Siddharth");
fragment.setArguments(bundle);
In FragmentTwo, I have implemented :
Bundle bundle = this.getArguments();
String myInt = bundle.getString("Hello","Test");
mStartTripButton.setText(myInt);
Best Way to exchange data between activity/fragments, fragment/fragment/, activity/activity, class/ class, make a common singleton class like:
public class DataHolderClass {
private static DataHolderClass dataObject = null;
private DataHolderClass() {
// left blank intentionally
}
public static DataHolderClass getInstance() {
if (dataObject == null)
dataObject = new DataHolderClass();
return dataObject;
}
private String distributor_id;;
public String getDistributor_id() {
return distributor_id;
}
public void setDistributor_id(String distributor_id) {
this.distributor_id = distributor_id;
}
}
now set from anywhere(Fragment, activity, class) at any event before you move to new screen
DataHolderClass.getInstance().setDistributor_id("your data");
now get anywhere(Fragment, activity, class)
String _data = DataHolderClass.getInstance().getDistributor_id();
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With