I've got a DialogFragment
used to display a TimePickerDialog
when pressing a button
, and I would like to change the text of the button to the new time set.
My problem is I can't call setOnDismissListener
on the DialogFragment
from my Activity
.
This is my DialogDragment
public class TimePickerFragment extends DialogFragment
implements TimePickerDialog.OnTimeSetListener {
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
int hour = Application.getSettings().getInt("hour", 11);
int minute = Application.getSettings().getInt("minute", 11);
// Create a new instance of TimePickerDialog and return it
return new TimePickerDialog(getActivity(), this, hour, minute,
DateFormat.is24HourFormat(getActivity()));
}
@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
FirstTimeLaunchSettingsActivity.hours = hourOfDay;
FirstTimeLaunchSettingsActivity.minutes = minute;
}
}
And this is how I call this DialogFragment
public void showTimePickerDialog(View v) {
DialogFragment newFragment = new TimePickerFragment();
newFragment.show(this.getFragmentManager(), "timePicker");
}
I've already thought making a Handler
in my activity
which would refresh
the Activity
every seconde, but that's not how I would like to solve the problem.
I just want, when I close my DialogFragment
, my button to be set to the time I've entered.
Thanks for your help.