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

Метод dispose

Метод dispose класса TextEditingController отпускает контроллер текста. После вызова слушать изменения строки уже нельзя.

Синтаксис

controller.dispose()

Пример

Давайте создадим поле:

import 'package:flutter/material.dart'; void main() => runApp(const MaterialApp(home: Demo())); class Demo extends StatefulWidget { const Demo({super.key}); @override State<Demo> createState() => _DemoState(); } class _DemoState extends State<Demo> { late final c = TextEditingController(text: 'abcde'); @override void dispose() { c.dispose(); super.dispose(); } @override Widget build(BuildContext context) => TextField(controller: c); }

На экране поле с 'abcde', контроллер освобождают при закрытии.

Пример

Давайте покажем текст:

import 'package:flutter/material.dart'; void main() => runApp(const MaterialApp(home: Demo())); class Demo extends StatefulWidget { const Demo({super.key}); @override State<Demo> createState() => _DemoState(); } class _DemoState extends State<Demo> { late final c = TextEditingController(text: '12345'); @override void dispose() { c.dispose(); super.dispose(); } @override Widget build(BuildContext context) => TextField(controller: c); }

На экране '12345' перед dispose.

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

  • класс TextEditingController,
    который хранит текст и выделение
  • метод clear,
    который очищает строку в контроллере
  • виджет TextField,
    который принимает текст с клавиатуры
  • метод addListener,
    который подписывает функцию на изменения
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить