Как программно изменить DatePicker и TimePicker для отображения в режиме «Календарь» (или в режиме «Часы», соответственнAndroid

Форум для тех, кто программирует под Android
Anonymous
Как программно изменить DatePicker и TimePicker для отображения в режиме «Календарь» (или в режиме «Часы», соответственн

Сообщение Anonymous »

Мое приложение для Android использует android.widget.DatePicker и android.widget.TimePicker в нескольких местах. Я хотел бы дать пользователю возможность выбрать, хотят ли они отображать это диалоговое окно в «режиме календаря» или «режиме счетчика» (или в «режиме часов» или «режиме счетчика», соответственно, для TimePicker).
Я нашел разное. добавляет (например, Как программно установить datePickerMode="spinner"?) и после этого я звоню:

Код: Выделить всё

datePicker.setSpinnersShown(true);
datePicker.setCalendarViewShown(false);
(для режима счетчика или наоборот, для другого режима).
Но эти вызовы не оказывают никакого влияния на рендеринг DatePicker.
Чего мне не хватает?
Позднее дополнение:
Я только что узнал, что если я объявлю DatePicker изначально использовать режим счетчика следующим образом: ... тогда вызовы работают и фактически переключают режим отображения.
Но недостатком этого подхода является то, что весь виджет выглядит странно, т.е. отображается с неправильной высотой (заголовок отсутствует, а календарь обрезан внизу):
Режим календаря:
Изображение

Режим Spinner:
Изображение

... вместо правильного отображения показывает заголовок с текущей выбранной датой:
Изображение

Мне кажется, этот виджет довольно глючный... :-(

Подробнее здесь: https://stackoverflow.com/questions/798 ... n-calendar

Вернуться в «Android»