Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
647 of 1024 menu
◀ ▶

Виджет Focus

Виджет Focus принимает focusNode типа FocusNode и child.

Синтаксис

Focus( focusNode: focusNode, child: TextField(), )

Параметры

Параметр Описание
focusNode Узел фокуса FocusNode.
child Поддерево с полем ввода.
autofocus Забирает фокус при построении.
onFocusChange Вызывается при смене hasFocus.

Методы

Метод Описание
of Возвращает ближайший узел фокуса. Если узла нет, вызов бросает ошибку.
maybeOf Возвращает ближайший узел фокуса или пустое значение, если узла нет.

Пример

Давайте обернём поле:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: Center( child: Focus(child: TextField(decoration: const InputDecoration(labelText: 'abcde'))), ), ), ), ); }

На экране поле внутри Focus.

Пример

Давайте зададим autofocus:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: Center( child: Focus(autofocus: true, child: TextField(decoration: const InputDecoration(hintText: '12345'))), ), ), ), ); }

На экране поле сразу получает фокус.

Смотрите также

  • класс FocusNode,
    который хранит фокус поля
  • метод of,
    который находит форму в контексте
  • виджет FocusTraversalGroup,
    который задаёт порядок Tab между полями
  • виджет TextField,
    который принимает текст с клавиатуры
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить