在XML中设置Android TimePicker

是否可以将TimePicker小时模式设置为XML文件中的24小时模式? 或者仅在Java中才有可能? 我想做一个有24小时select器的布局,但是我找不到这样的属性。

  • 在解除TimePickerDialog时也会调用OnTimeSet
  • 当解除TimePickerDialog时,OnTimeSet也被调用
  • Android:如何有这种types的时间select器?
  • Android TimePicker(Wheel Style)无法正确响应ScrollView中的轻弹手势
  • Android的 - 如何更改TimePicker中的textColor?
  • 时间选择器显示时间像4:7而不是04:07
  • 在XML中设置Android TimePicker
  • 使用时间select器android获取时间
  • 不,你不能在XML中设置24小时模式,你必须使用

    MyTimePicker.setIs24HourView(boolean); 

    通过对TimePicker进行子类化,可以获得24小时的版本,并在XML文件中使用适当的包名称使用该子类:

     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); } } 

    在你可能添加的布局中

      <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"/> 

    你可以从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