Finalement, j'ai trouvé la solution. Tout cela se passe à l'intérieur de l'adaptateur RecyclerView. J'ai ajouté un écouteur onClick au textView. Ensuite, je passe la vue lorsque je crée le Fragment de dialogue.
A l'intérieur du onBindViewHolder:
horarioViewHolder.mFromTime.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
DialogFragment newFragment = new TimePickerFragment(v);
newFragment.show(((ChefAltaUnoActivity)mContext).getSupportFragmentManager(), "timePicker");
}
});
intérieur TimePickerFragment:
public static class TimePickerFragment extends DialogFragment implements TimePickerDialog.OnTimeSetListener {
private View mView;
public TimePickerFragment(View view) {
mView = view;
}
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
// Use the current time as the default values for the picker
final Calendar c = Calendar.getInstance();
int hour = c.get(Calendar.HOUR_OF_DAY);
int minute = c.get(Calendar.MINUTE);
TimePickerDialog timePicker = new TimePickerDialog(getActivity(), R.style.CustomTimePickerDialogTheme, this, hour, minute,
DateFormat.is24HourFormat(getActivity()));
// Create a new instance of TimePickerDialog and return it
return timePicker;
}
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
((TextView) mView).setText("format the time text as you want.");
}
}
espère que cela aide quelqu'un d'autre.