Экосистема Flutter действительно хороша для создания высококачественных приложений с множеством функций. Управление состоянием - один из важных аспектов высокого качества, и это всегда сложная задача для каждого разработчика программного обеспечения, независимо от типа создаваемого им приложения. Управление состоянием становится более сложным по мере увеличения сложности приложения. Во Flutter у нас есть опция BLoC (Business Logic Component) для чистого и элегантного управления состоянием.

Шаблон BLoC - очень надежный метод управления состоянием, поскольку он использует потоки в качестве ядра, и совсем не сложно реализовать BLoC в любом приложении. Динамическая тема означает изменение темы приложения в зависимости от предпочтений пользователя во время выполнения. Этот метод используется для удобного взаимодействия с пользователем, поскольку у пользователя всегда есть выбор переключить тему. Когда мы говорим о шаблоне BLoC во Flutter, на ум приходят 3 вещи:

  1. StreamController
  2. Транслировать
  3. Раковина

Если вы не знакомы с потоками и шаблоном BLoC, то я бы порекомендовал вам изучить их на этом ресурсе.

Прежде всего, мы создадим новый файл в папке lib для логики BLoC. Этот файл будет содержать логическую часть (основное ядро ​​логики шаблона BLoC), необходимую для нашего приложения.

Здесь мы создаем StreamController типа bool, потому что мы хотим передать логические данные в наш поток. После этого мы реализуем функции changeTheme () и darkThemeIsEnabled (), используя приемник и поток соответственно.

В файле home_page.dart мы просто создаем каркас, а внутри этого каркаса мы просто визуализируем список со случайными изображениями на плитке списка. Данные представлены в демонстрационных целях. Создается ящик и дается переключатель для переключения между светлой и темной темой.

Теперь, когда все эти файлы созданы, нам необходимо настроить файл main.dart для запуска приложения соответствующим образом. Вот файл main.dart.

В файле main.dart мы используем виджет StreamBuilder для работы с потоками, которые появляются из-за шаблона BLoC.

Вот скриншоты созданного нами приложения.

Это демонстрационное приложение, которое может быть реализовано для выполнения динамического поведения темы в вашем приложении с использованием шаблона BLoC для управления состоянием. Функциональность динамической темы обеспечивает хорошее взаимодействие с пользователем, поскольку у пользователя есть собственный выбор, чтобы переключаться между различными цветовыми темами.

Заключительные слова

Динамическая тема всегда удобна для пользователя, и поэтому действительно здорово реализовывать динамическую тему в приложениях. Шаблон BLoC - это очень надежный метод управления состоянием при флаттере, который можно использовать для масштабирования любого приложения на любом уровне. Итак, мы можем использовать шаблон BLoC для управления состоянием, а также для реализации динамических тем.

Прощай!!!