0

I know how to do this with Intent, but how do I do this....

Here is the code I have to open the DatePickerFragment:

DialogFragment newFragment = new DatePickerFragment();

Bundle bundle = new Bundle();
bundle.putString("date", (String) itemDict.get(Helper.convertKeyString(name, false)));
newFragment.setArguments(bundle);

newFragment.show(getFragmentManager(), "datePicker");

Once that is open, how do I pass the date I choose back to my Activity?

Ethan Allen
  • 14,425
  • 24
  • 101
  • 194

1 Answers1

1

You can create interface, pass it to DatePickerFragment (in constructor), and then call method in before closing the dialog

For example:

Your interface:

public interface OnDatePicked{
    void onDatePicked();
}

Your Activity:

public YourActivity implements OnDatePicked{
    //your Activity
}

And your DatePickerFragment:

public class DatePickerFragment { //change Object to required type
    private OnDatePicked listener;

    public DatePickerFragment(OnDatePickedlistener){
        this.listener=listener;
    }

    //required methods
    protected void method(Object o){
        //your stuff
        listener.onDatePicked();
    }
}
Nermeen
  • 15,883
  • 5
  • 59
  • 72