Можно ли удалить кнопку AM/PM из TimePicker?
Я хочу показать 24-часовое время вместо 12 часов, используя TimePicker, и мне не нужен AM/PM-бутон, просто хочу показать 24-часовые часы.
Возможно ли это?
Я использовал setIs24HourView(true)
, но он не работает.
Предложите мне Как я могу показать 24-часовые часы?
Ответы
Ответ 1
Вы пытались установить setIs24HourView?
Если вам просто нужно использовать виджет NumberPicker другими ненормальными способами:
В Android есть виджет NumberPicker, но это частный API. Этот парень вытащил код, чтобы вы могли бросить его в любой проект.
Вот пример того, как я использовал его для ставок налога:
![alt text]()
Ответ 2
Я столкнулся с той же проблемой, но решил ее, выполнив setIs24HourView
в вызове onCreate
для активности.
Ответ 3
Вы можете переопределить
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
}
}
Вот как его использовать
MyTimePickerDialog dialog = new MyTimePickerDialog(getActivity(), this, hour, minute,
true /*DateFormat.is24HourFormat(getActivity())*/);
dialog.setTitle("Set Time");
Ответ 4
Вы должны вызвать функцию setIs24HourView и отправить true для этого.
когда таймер выбора в режиме 24 AM/PM исчезнет.
TimePicker tpHourMin = (TimePicker) findViewById(R.id.timePicker);
tpHourMin.setIs24HourView(true);