Виджет Form
Виджет Form хранит и вызывает validate через GlobalKey<FormState>FormState.
Синтаксис
Form(
key: formKey,
child: TextFormField(),
)
Параметры
| Параметр | Описание |
|---|---|
key |
Ключ для доступа к FormState.
|
child |
Поддерево с TextFormField.
|
autovalidateMode |
Режим AutovalidateMode.
|
onChanged |
Вызывается при изменении любого поля. |
Методы
| Метод | Описание |
|---|---|
of |
Возвращает состояние ближайшей формы вверх по дереву. |
Пример
Давайте выведем форму с полем:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Form(child: TextFormField(decoration: const InputDecoration(labelText: 'abcde'))),
),
),
),
);
}
На экране форма с одним полем и подписью.
Пример
Давайте добавим второе поле:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Form(child: Column(mainAxisSize: MainAxisSize.min, children: [TextFormField(decoration: InputDecoration(labelText: 'abcde')), TextFormField(decoration: InputDecoration(labelText: '12345'))])),
),
),
),
);
}
На экране два поля внутри одной формы.
Смотрите также
-
класс
FormState,
который управляет проверкой и сохранением -
виджет
TextFormField,
который проверяет поле внутри формы -
метод
of,
который находит форму в контексте -
перечисление
AutovalidateMode,
который решает, когда проверять форму