¿Cómo transferir la cadena de fecha formateada de mi DatePickerFragment?
Siguiendo el documento oficialhttp://developer.android.com/guide/topics/ui/controls/pickers.html#DatePicker.
He utilizado el mismo código y he agregado solo el formato de resultados en elonDateSet
método:
public class DatePickerFragment extends DialogFragment
implements DatePickerDialog.OnDateSetListener {
@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);
// Create a new instance of DatePickerDialog and return it
return new DatePickerDialog(getActivity(), this, year, month, day);
}
@Override
public void onDateSet(DatePicker view, int year, int month, int day) {
Calendar c = Calendar.getInstance();
c.set(year, month, day);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String formattedDate = sdf.format(c.getTime());
// How to get the string from here to the caller?
}
}
Para la prueba, la actividad de la persona que llama simplemente muestra elTextView
y llama al selector cuando el usuario toca el widget:
public class OrderHeadEditActivity extends Activity {
private TextView mDTDelivery;
...
@Override
protected void onCreate(Bundle bundle) {
...
mDTDelivery = (TextView) findViewById(R.id.order_head_view_dt_delivery);
...
mDTDelivery.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
DialogFragment picker = new DatePickerFragment();
picker.show(getFragmentManager(), "datePicker");
}
});
}
...
}
Se muestra el selector de fecha y, después de establecer el punto de interrupción en el lugar donde el resultado tiene el formato de una cadena, puedo ver que funciona.
Sin embargo, no sé cómo pasar el valor de cadena de nuevo a lamtDTDelivery
widget?