2011-07-22 16 views
19

¿Es posible establecer el modo de horario de TimePicker en modo de 24 horas en un archivo XML? ¿O es posible solo en Java? Quiero hacer un diseño que tenga selector de 24 horas, pero no puedo encontrar dicho atributo.Configuración de Android TimePicker en XML

Respuesta

42

No, no se puede establecer el modo de 24 horas en el XML, usted tiene que utilizar

MyTimePicker.setIs24HourView(boolean); 
10

Es posible subclasificando TimePicker para obtener una versión de 24 horas, y utilizar esa subclase en el XML archivo con el nombre del paquete apropiado:

public class TimePicker24Hours extends TimePicker { 

    public TimePicker24Hours(Context context) { 
     super(context); 
     init(); 
    } 

    public TimePicker24Hours(Context context, 
      AttributeSet attrs) { 
     super(context, attrs); 
     init(); 
    } 

    public TimePicker24Hours(Context context, 
      AttributeSet attrs, 
      int defStyle) { 
     super(context, attrs, defStyle); 
     init(); 
    } 

    private void init() { 
     setIs24HourView(true); 
    } 

} 

en el diseño puede agregar

<RelativeLayout 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:tools="http://schemas.android.com/tools" 
     xmlns:dt_codecomponents="http://schemas.android.com/apk/res/my.app.package" 
    ... 

     <my.app.package.style.TimePicker24Hours 
      android:id="@+id/timePicker1" 
      android:layout_width="wrap_content"/> 
1

Puede configurarlo desde el archivo java.

xml

<TimePicker 
     android:layout_width="300dp" 
     android:layout_height="300dp" 
     android:id="@+id/timePicker" /> 

java

TimePicker timePicker = (TimePicker) findViewById(R.id.timePicker); 

timePicker.setIs24HourView(true); // to set 24 hours mode 
timePicker.setIs24HourView(false); // to set 12 hours mode 
Cuestiones relacionadas