Je travaille actuellement sur la conversion d'une activité en un fragment. L'activité contient un Edittext qui, lorsqu'il est cliqué, affiche un DialogFragmment pour choisir une date. Dans l'activité que je voudrais simplement appeler cela pour montrer la boîte de dialogue:Affichage d'un fragment de dialogue dans un fragment
@SuppressLint("NewApi")
public void showDatePickerDialog(View v) {
DatePickerFragment newFragment = new DatePickerFragment(datePickerEditText);
newFragment.show(getFragmentManager(), "datePicker");
}
Toutefois, cela ne semble pas fonctionner pour montrer la boîte de dialogue à partir d'un fragment. Je reçois une erreur sur la méthode "show". Donc, pour être clair, je me demandais comment montrer un DialogFragment à partir d'un fragment?
C'est le code pour le DialogFragment
public class DatePickerFragment extends DialogFragment implements DatePickerDialog.OnDateSetListener {
public EditText activity_edittext;
@SuppressLint("ValidFragment")
public DatePickerFragment(EditText edit_text) {
activity_edittext = edit_text;
}
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
// Use the current date as the default date in the picker
final Calendar c = Calendar.getInstance();
int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH);
int day = c.get(Calendar.DAY_OF_MONTH);
return new DatePickerDialog(getActivity(), this, year, month, day);
}
@Override
public void onDateSet(DatePicker view, int year, int month, int day) {
activity_edittext.setText(String.valueOf(day) + "/" + String.valueOf(month + 1) + "/" + String.valueOf(year));
}
}
Fonctionne très bien. Merci beaucoup. – mgnusl
@mgnusl vous êtes les bienvenus! Je suis content de vous aider. – mari