2010-11-10 21 views
12

Quiero mostrar 24 horas reloj en su lugar 12 horas usando TimePicker, y no necesito el botón AM/PM, simplemente quiero mostrar las 24 horas del reloj.¿Es posible eliminar el botón AM/PM de TimePicker?

¿Esto es posible?

He usado setIs24HourView(true) pero no funciona.

Sugerirme ¿Cómo puedo mostrar las 24 horas del reloj?

+0

Simplemente curioso, pero ¿por qué tiene que estar en el diseño y no en el código? – brianestey

Respuesta

13

Have you tried setting setIs24HourView?

Si sólo necesita utilizar el widget NumberPicker en otras formas anormales:

No es un widget NumberPicker en Android, pero es una API privada. This guy pulled out the code para que pueda colocarlo en cualquier proyecto.

Here is an example of how I used it for tax rates:

alt text

+0

prefiero usar timepicker, necesito llamar a "setIs24HourView (verdadero)" desde el diseño, no desde el código java. ¿es posible? – NullPointerException

+0

No parece posible, no lo puedo encontrar en la documentación:/ –

+0

ojalá espere si alguien lo supiera – NullPointerException

5

que he experimentado el mismo problema, pero lo resolvió haciendo lo setIs24HourView en la llamada onCreate para la actividad ..

0

Usted puede overrite la

public void onTimeChanged (TimePicker view, int hourOfDay, int minute) 
method of TimePickerDialog to completely remove AM/PM: 

class MyTimePickerDialog extends TimePickerDialog { 
    MyTimePickerDialog(Context context, TimePickerDialog.OnTimeSetListener callBack, int hourOfDay, int minute, boolean is24HourView) { 
     super(context, callBack, hourOfDay, minute, is24HourView); 
    } 
@Override 
public void onTimeChanged (TimePicker view, int hourOfDay, int minute) { 
    // to prevent the dialog from changing the title which by default contains AM/PM 
} 
} 

Aquí está cómo usarlo

MyTimePickerDialog dialog = new MyTimePickerDialog(getActivity(), this, hour, minute, 
         true /*DateFormat.is24HourFormat(getActivity())*/); 
dialog.setTitle("Set Time"); 
0

Debe llamar a la función setIs24HourView y enviar verdadero para eso.
cuando el selector de tiempo está en el modo 24 AM/PM desaparecerá.

TimePicker tpHourMin = (TimePicker) findViewById(R.id.timePicker); 
tpHourMin.setIs24HourView(true); 
Cuestiones relacionadas