Виджет DropdownButtonFormField
Виджет DropdownButtonFormField добавляет validator и decoration как у TextFormField.
Синтаксис
DropdownButtonFormField<String>(value: 'abcde', items: items, onChanged: (v) {})
Параметры
| Параметр | Описание |
|---|---|
value |
Выбранное значение. |
items |
Пункты DropdownMenuItem.
|
onChanged |
Обработчик выбора. |
decoration |
Оформление InputDecoration.
|
validator |
Проверка перед submit. |
Пример
Давайте выведем поле формы:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: DropdownButtonFormField<String>(value: 'abcde', decoration: const InputDecoration(labelText: 'abcde'), items: const [DropdownMenuItem(value: 'abcde', child: Text('abcde'))], onChanged: (_) {}),
),
),
),
);
}
На экране выпадающий список с подписью.
Пример
Давайте сменим value:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: DropdownButtonFormField<String>(value: '12345', items: const [DropdownMenuItem(value: '12345', child: Text('12345'))], onChanged: (_) {}),
),
),
),
);
}
На экране выбрано '12345'.
Смотрите также
-
виджет
DropdownButton,
который открывает выпадающий список -
виджет
Form,
который объединяет поля формы -
класс
InputDecoration,
который задаёт подпись и рамку поля -
перечисление
AutovalidateMode,
который решает, когда проверять форму