Определите действие, когда AlertDialog отклонен, нажав снаружи - PullRequest
0 голосов
/ 04 апреля 2020

Я делаю простое приложение TODO во Флаттере. Рядом с каждым предметом у меня есть значок «Редактировать», который открывает AlertDialog с предварительно заполненным описанием и количеством этого предмета. Когда я щелкаю за пределами диалогового окна, оно закрывается, как и ожидалось. Для этой формы я использую две строковые переменные с именами description и amount, а также два контроллера с именами descriptionController и amountController.

У меня также есть кнопка «Добавить», которая открывает аналог диалоговое окно с аналогичной формой оповещения, в котором я использую те же строковые переменные и контроллеры.

Проблема возникает в следующем сценарии: - Я нажимаю кнопку «Изменить» для определенного элемента. Откроется диалоговое окно с предварительно заполненными полями. - Я закрываю диалог, нажимая снаружи. - Я нажимаю кнопку «Новый». Появляется диалоговое окно, но вместо пустых полей я по-прежнему вижу значения элемента, который я редактировал ранее.

Одним из решений, конечно, было бы использование отдельных контроллеров. Но я хотел бы знать, есть ли возможность обнаружить, что диалоговое окно закрыто, нажав снаружи и выполнить определенное действие (очистить контроллеры).

Спасибо.

...