Подтвердить что ты не робот

Можно ли удалить кнопку AM/PM из TimePicker?

Я хочу показать 24-часовое время вместо 12 часов, используя TimePicker, и мне не нужен AM/PM-бутон, просто хочу показать 24-часовые часы.

Возможно ли это?

Я использовал setIs24HourView(true), но он не работает.

Предложите мне Как я могу показать 24-часовые часы?

4b9b3361

Ответ 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);