Как отключить изменение минут в TimePickerDialog

#android #timepicker

#Android #timepicker

Вопрос:

Нужно разрешить только изменять часы, как это можно сделать?

В простом TimePicker я могу установить TimePicker.Интерфейс OnTimeChangedListener, но этот интерфейс недоступен в TimePickerDialog.

Комментарии:

1. привет, не могли бы вы рассказать мне, как вы это исправили

Ответ №1:

Вы можете скопировать исходный код исходного виджета и его макет и включить его в свой собственный проект в качестве класса «библиотека». Вам также необходимо будет обновить ссылки на источник на R. С помощью макета вы можете показывать все, что хотите, в отношении того, что минуты не доступны для редактирования. Поскольку это домашнее задание, обязательно правильно отметьте, что вы настраиваете виджет из исходной библиотеки Android.

Ответ №2:

Используйте getCurrentHour() и setCurrentHour() и установите минуты равными 0.

Ответ №3:

В документации не показано никакого способа сделать это, поэтому я думаю, что такого способа нет. Вы могли бы создать подкласс класса TimePicker и каким-то образом отключить средство выбора минут самостоятельно, но нет причин так много работать.

Однако вы можете установить значение 0 ( TimePicker.setCurrentMinute(0) ), и если пользователь изменит его, просто проигнорируйте. И вы должны сообщить пользователю, что изменение минуты не имеет значения, поскольку вы ее не используете.