2010-11-23 18 views
5

¿Cómo puedo crear el cuadro de diálogo de configuración de fecha y hora en Android? Quiero:Diálogo de configuración de fecha y hora en Android

  • 3 campos - día, horas y minutos
  • que debe ser nativo al sistema - que hace que escribir mi propio widget bastante difícil - cómo hacer que los botones más/menos por encima/debajo de cada campo se parecen a los botones estándar que están en TimePickerDialog? Quiero decir, incluso en HTC Sense.

Respuesta

15

Cree los botones que usará para mostrar la fecha y la hora, y activar los cuadros de diálogo de fecha y hora.

código Ejemplo:

fromDatePicker = (Button) findViewById(R.id.fromDatePicker); 
    fromDatePicker.setText(dateNow); 
    fromDatePicker.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View v) { 
      showDialog(FROM_DATE_DIALOG_ID); 
     } 
    }); 

    fromTimePicker = (Button) findViewById(R.id.fromTimePicker); 
    fromTimePicker.setText(timeNow); 
    fromTimePicker.setOnClickListener(new View.OnClickListener() { 

     public void onClick(View v) { 
      showDialog(FROM_TIME_DIALOG_ID); 
     } 
    }); 

Cree sus diálogos como éste:

@Override 
protected Dialog onCreateDialog(int id) { 
    switch (id) { 
     case FROM_TIME_DIALOG_ID: 
      return new TimePickerDialog(this,fromTimeSetListener, fromHour, fromMinute, false); 
     case FROM_DATE_DIALOG_ID: 
      return new DatePickerDialog(this,fromDateSetListener,fromYear, fromMonth, fromDay); 
     case TO_TIME_DIALOG_ID: 
      return new TimePickerDialog(this,toTimeSetListener, toHour, toMinute, false); 
     case TO_DATE_DIALOG_ID: 
      return new DatePickerDialog(this,toDateSetListener,toYear, toMonth, toDay);     
    } 
    return null; 
} 

Su pantalla se verá así:

alt text

Al hacer clic en el botón de la fecha, una datepicker aparecerá emergente mirando como este:

alt text

Al hacer clic en el botón de tiempo, un TimePicker popup con este aspecto:

alt text

Android no ofrece un cuadro de diálogo DateTimePicker combinado de la caja ... Si desea combinar la fecha y el selector de tiempo en 1 pantalla o cuadro de diálogo tiene 3 opciones:

Trabajar con los widgets UI en un diseño/vista:

<TimePicker 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" /> 

<DatePicker 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" /> 

Encuentra un componente tercera parte que ofrece esta funcionalidad

Hay una datetimepicker encargo en http://code.google.com/p/datetimepicker

uno personalizado

+1

Gracias pero eso es lo que estoy haciendo ahora, quiero solo un diálogo – fhucho

Cuestiones relacionadas