🧩TimePicker

TimePicker в Flutter

Что такое TimePicker?

TimePicker — это диалоговое окно в Flutter, позволяющее пользователю выбрать время (часы и минуты). Это полезно, когда приложение требует, чтобы пользователь указал определённое время, например, для будильника, напоминания или бронирования.

Аналогия: Представьте себе обычные часы со стрелками, на которых можно установить время. TimePicker работает примерно так же: он открывает интерфейс, где вы выбираете нужные вам часы и минуты, после чего возвращает выбранное время в приложении.

Пример использования TimePicker

Future<void> _selectTime(BuildContext context) async {
  final TimeOfDay? picked = await showTimePicker(
    context: context,
    initialTime: TimeOfDay.now(),
  );
  if (picked != null) {
    print("Выбранное время: ${picked.format(context)}");
  }
}

В этом примере используется функция showTimePicker, которая открывает диалоговое окно для выбора времени. initialTime устанавливает начальное время, которое отображается при открытии.

Пояснение кода

  1. Future<void> — функция асинхронная, так как showTimePicker возвращает Future, который выполняется, когда пользователь выбирает время или закрывает окно.

  2. TimeOfDay.now() — устанавливает текущее время по умолчанию в TimePicker.

  3. picked?.format(context) — преобразует выбранное время в строку формата времени.


Все настройки TimePicker с пояснениями и примерами

1. BuildContext context

Описание: Контекст, необходимый для отображения диалогового окна в нужной части иерархии виджетов. Пример:


2. required TimeOfDay initialTime

Описание: Устанавливает начальное время, отображаемое при открытии диалогового окна. Пример:


3. bool useRootNavigator = true

Описание: Определяет, должен ли TimePicker использовать корневой навигатор. Полезно при наличии нескольких навигаторов в приложении. Пример:


4. RouteSettings? routeSettings

Описание: Настройки для маршрута, по которому открывается диалоговое окно. Пример:


5. TextDirection? textDirection

Описание: Устанавливает направление текста, может быть ltr (слева направо) или rtl (справа налево). Пример:


6. bool builder

Описание: Позволяет настраивать стиль или обернуть TimePicker в другие виджеты, используя кастомный WidgetBuilder. Пример:


7. bool initialEntryMode = TimePickerEntryMode.dial

Описание: Определяет начальный режим выбора времени: dial для выбора с помощью циферблата и input для ввода времени с клавиатуры. Пример:

Last updated