logo

FocusNode

flutter

widgets

`FocusNode` — это объект, который отслеживает фокус ввода для виджета (например, `TextField`). С его помощью можно программно устанавливать, снимать или слушать изменение фокуса.

💡 Примечание:

Если вы используете `FocusNode` в `StatefulWidget`, не забудьте вызвать `focusNode.dispose()` в `dispose()` метода виджета.

Основные свойства

hasFocus (bool)

Булевое значение: `true`, если фокус находится на этом узле.

canRequestFocus (bool)

Определяет, может ли этот узел принимать фокус. По умолчанию `true`.

hasPrimaryFocus (bool)

`true`, если этот узел — основной в иерархии фокуса.

Основные методы

requestFocus() (void)

Программно устанавливает фокус на этот узел.

unfocus() (void)

Снимает фокус с этого узла.

dispose() (void)

Освобождает ресурсы, связанные с `FocusNode`. Вызывается в `dispose()` метода виджета.

⚠️ Важно:

`FocusNode` нельзя повторно использовать в нескольких `TextField`. Для каждого поля ввода нужен отдельный `FocusNode`.