android - proveedor - Selector de fechas: cómo abrir un selector de fechas al hacer clic en el botón y almacenar el valor en la variable
selector de fecha y hora en android studio (2)
Haz de esta clase la clase interna en tu actividad.
si desea establecer la fecha actual como la fecha que ve cuando abre el datePicker. Puedes conseguirlo así
Calendar c = Calendar.getInstance();
int startYear = c.get(Calendar.YEAR);
int startMonth = c.get(Calendar.MONTH);
int startDay = c.get(Calendar.DAY_OF_MONTH);
class StartDatePicker extends DialogFragment implements DatePickerDialog.OnDateSetListener{
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
// TODO Auto-generated method stub
// Use the current date as the default date in the picker
DatePickerDialog dialog = new DatePickerDialog(BookingFormActivity.this, this, startYear, startMonth, startDay);
return dialog;
}
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
// TODO Auto-generated method stub
// Do something with the date chosen by the user
startYear = year;
startMonth = monthOfYear;
startDay = dayOfMonth;
updateStartDateDisplay();
}
}
puede llamar a este cuadro de diálogo configurando este método en onClick
public void showStartDateDialog(View v){
DialogFragment dialogFragment = new StartDatePicker();
dialogFragment.show(getFragmentManager(), "start_date_picker");
}
Quiero mostrar la ventana emergente del selector de fecha. He encontrado algunos ejemplos pero no lo estoy recibiendo correctamente. Tengo un botón y quiero que cuando haga clic en el botón emergente del cuadro de diálogo de selección de fechas aparezca y después de configurar la fecha, la fecha se almacene en una variable. Por favor, proporcione código de ejemplo o buenos enlaces.
Prueba esto.
Usa este código en tu botón. Se mostrará el diálogo de selección de fecha.
Calendar c = Calendar.getInstance();
int mYear = c.get(Calendar.YEAR);
int mMonth = c.get(Calendar.MONTH);
int mDay = c.get(Calendar.DAY_OF_MONTH);
System.out.println("the selected " + mDay);
DatePickerDialog dialog = new DatePickerDialog(Registration.this,
new mDateSetListener(), mYear, mMonth, mDay);
dialog.show();
Entonces, la clase mDateSetListener
necesita ser escrita.
class mDateSetListener implements DatePickerDialog.OnDateSetListener {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
// TODO Auto-generated method stub
// getCalender();
int mYear = year;
int mMonth = monthOfYear;
int mDay = dayOfMonth;
v.setText(new StringBuilder()
// Month is 0 based so add 1
.append(mMonth + 1).append("/").append(mDay).append("/")
.append(mYear).append(" "));
System.out.println(v.getText().toString());
}
}
Por favor marque esta respuesta y vote.