Изменение цвета значка в диалоговом окне оповещения с помощью setState другого файла - PullRequest
0 голосов
/ 04 апреля 2019

Проблема, с которой я сталкиваюсь, состоит в том, чтобы изменить цвет иконки другого класса. Поэтому в моем приложении мне нужно вызвать setState из файла 1 из файла 2.

Я пробовал функцию обратного вызова, но она не работает. Возможно из-за недостатка опыта и понимания.

Файл 1 (показан полный файл для лучшего понимания моей проблемы):

Файл 2 (показан полный файл для лучшего понимания моей проблемы):

В настоящее время значок в диалоговом окне оповещения изменит свой цвет только при повторном открытии диалогового окна оповещения (это просто вызывает setState File 1 из File 1).

Мой ожидаемый результат - при нажатии кнопки в диалоговом окне оповещения цвет значка мгновенно изменяется без необходимости повторного открытия диалогового окна оповещения.

Надеюсь, кто-то может подсказать мне, что и как реализовать, чтобы достичь ожидания ...

1 Ответ

0 голосов
/ 04 апреля 2019

Для свойства color по умолчанию используется текущий цвет IconTheme, если он есть.Как правило, будет использоваться цвет дизайна материала, как показано ниже:

Icon(
 CustomIcon.MyFlutterApp.light,
 color: Colors.blue.shade400, //any color you want
 size: 100,
),

Или вы можете сделать так:

child: new IconTheme(
    data: new IconThemeData(
        color: Colors.yellow), 
    child: new Icon(CustomIcon.MyFlutterApp.light),
),

Кстати, я не проверял код, но он долженработа.

...