Utilizo un widget DatePicker
en Android para que el usuario establezca una fecha y desee obtener el valor de la fecha cuando se hace clic en un botón de confirmación, ¿cómo puedo hacer eso?¿Cómo obtener la fecha del widget DatePicker en Android?
Respuesta
Prueba esto:
DatePicker datePicker = (DatePicker) findViewById(R.id.datePicker1);
int day = datePicker.getDayOfMonth();
int month = datePicker.getMonth() + 1;
int year = datePicker.getYear();
La clase DatePicker tiene métodos para obtener el mes, el año, el día del mes. O puede usar un OnDateChangedListener.
Quiere decir que desea agregar widget de DatePicker en sus aplicaciones.
declaración de variable global en su clase de actividad:
private Button mPickDate;
private int mYear;
private int mMonth;
private int mDay;
static final int DATE_DIALOG_ID = 0;
anote este código en onCreate (función):
//date picker presentation
mPickDate = (Button) findViewById(R.id.pickDate);//button for showing date picker dialog
mPickDate.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) { showDialog(DATE_DIALOG_ID); }
});
// get the current date
final Calendar c = Calendar.getInstance();
mYear = c.get(Calendar.YEAR);
mMonth = c.get(Calendar.MONTH);
mDay = c.get(Calendar.DAY_OF_MONTH);
// display the current date
updateDisplay();
anote aquellos función fuera de onCreate() Función:
//return date picker dialog
@Override
protected Dialog onCreateDialog(int id) {
switch (id) {
case DATE_DIALOG_ID:
return new DatePickerDialog(this, mDateSetListener, mYear, mMonth, mDay);
}
return null;
}
//update month day year
private void updateDisplay() {
mBodyText.setText(//this is the edit text where you want to show the selected date
new StringBuilder()
// Month is 0 based so add 1
.append(mYear).append("-")
.append(mMonth + 1).append("-")
.append(mDay).append(""));
//.append(mMonth + 1).append("-")
//.append(mDay).append("-")
//.append(mYear).append(" "));
}
// the call back received when the user "sets" the date in the dialog
private DatePickerDialog.OnDateSetListener mDateSetListener =
new DatePickerDialog.OnDateSetListener() {
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
mYear = year;
mMonth = monthOfYear;
mDay = dayOfMonth;
updateDisplay();
}
};
Debe marcarse como la mejor respuesta – Amir
Me las arreglé para configurar el MinDate & el MaxDate programación de esta manera:
final Calendar c = Calendar.getInstance();
int maxYear = c.get(Calendar.YEAR) - 20; // this year (2011) - 20 = 1991
int maxMonth = c.get(Calendar.MONTH);
int maxDay = c.get(Calendar.DAY_OF_MONTH);
int minYear = 1960;
int minMonth = 0; // january
int minDay = 25;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.create_account);
BirthDateDP = (DatePicker) findViewById(R.id.create_account_BirthDate_DatePicker);
BirthDateDP.init(maxYear - 10, maxMonth, maxDay, new OnDateChangedListener()
{
@Override
public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth)
{
if (year < minYear)
view.updateDate(minYear, minMonth, minDay);
if (monthOfYear < minMonth && year == minYear)
view.updateDate(minYear, minMonth, minDay);
if (dayOfMonth < minDay && year == minYear && monthOfYear == minMonth)
view.updateDate(minYear, minMonth, minDay);
if (year > maxYear)
view.updateDate(maxYear, maxMonth, maxDay);
if (monthOfYear > maxMonth && year == maxYear)
view.updateDate(maxYear, maxMonth, maxDay);
if (dayOfMonth > maxDay && year == maxYear && monthOfYear == maxMonth)
view.updateDate(maxYear, maxMonth, maxDay);
}}); // BirthDateDP.init()
} // activity
funciona bien para mí, disfrutar :)
Quiero hacer lo contrario, significa que la fecha mínima será la fecha actual y la fecha máxima será cualquier fecha mayor que la actual. Cómo hacerlo. Cualquier ayuda será muy apreciada. Lo intenté pero tuve algún problema. Eche un vistazo a este http://stackoverflow.com/questions/8675984/date-picker-with-max-and-minimum-date-in-ondatechanged-in-android-1-5 – mH16
U también se puede usar te clase java Calendar.GregorianCalendar
GregorianCalendar calendarBeg=new GregorianCalendar(datePicker.getYear(),
datePicker.getMonth(),datePicker.getDayOfMonth());
Date begin=calendarBeg.getTime();
también puede utilizar este código ...
datePicker = (DatePicker) findViewById(R.id.schedule_datePicker);
int day = datePicker.getDayOfMonth();
int month = datePicker.getMonth() + 1;
int year = datePicker.getYear();
SimpleDateFormat dateFormatter = new SimpleDateFormat("MM-dd-yyyy");
Date d = new Date(year, month, day);
String strDate = dateFormatter.format(d);
- 1. Android DatePicker Fecha límite
- 2. Android HoneyComb DatePicker Color del texto
- 3. Obtener la fecha seleccionada en jqueryui datepicker modo en línea
- 4. Establecer los límites de fecha del datepicker de android
- 5. DatePicker Widget Formato
- 6. Cómo obtener la fecha de jQuery UI datepicker
- 7. jquery datepicker fecha predeterminada
- 8. jQuery datepicker para evitar la fecha pasada
- 9. Android DatePicker nombre Mes pantalla
- 10. ¿Cómo obtener el formato de fecha de jQuery UI datepicker?
- 11. ¿Cómo obtener el tamaño del widget de la aplicación?
- 12. Android - Obtenga tiempo del widget del cronómetro
- 13. ¿Cómo configuro la fecha actual en un DatePicker?
- 14. Cómo establecer una fecha/obtener una fecha para Datepicker en codebehind
- 15. ¿Cómo obtener la fecha del próximo domingo?
- 16. jQuery datepicker - cambiar la fecha de "hoy"?
- 17. jquery datepicker - calcular la diferencia de fecha
- 18. jQuery DatePicker Problema: establecer la fecha actual
- 19. jQuery DatePicker - sin fecha predeterminada
- 20. jQuery-UI fecha predeterminada datepicker
- 21. Android: ¿Cómo cambiar el formato de fecha de visualización de DatePicker de MM/dd/aaaa a dd/MM/aaaa?
- 22. Cómo usar jQuery UI Datepicker como un widget de Django?
- 23. Ejemplo de DatePicker en android
- 24. ¿Cómo obtener la fecha de creación del archivo en Linux?
- 25. ¿Cómo obtener la fecha y hora del cliente en ASP.NET?
- 26. Android: Actividad incorrecta de apertura del widget
- 27. Jquery UI datepicker, al hacer clic en una fecha, obtener la fecha y pasarla a la URL
- 28. Cómo obtener la fecha y la hora del servidor
- 29. Android: ¿Cómo obtener la fecha de creación de un archivo?
- 30. Implementación del widget de Android Actionbar Search En ListFragment
Esto no parece funcionar para mí al actualizar los valores de selector de fecha en la interfaz de usuario. Me da el valor que comenzó con – gnB
Derecha. Intente establecer OnDateSetListener para datePicker. –
Esto funcionó para mí. Establecí estos valores como este String day = String.valueof (datePicker.getDayOfMonth(); Hasta ahora funciona perfectamente porque convierte los ints en cadenas en mi caso para inserciones en una base de datos sql. – natur3