флаттер MobX сменить тему в магазине изменить - PullRequest
0 голосов
/ 15 февраля 2020

Я работаю над простым приложением, которое использует MobX в качестве менеджера состояний. Это приложение имеет 2 основные темы:

  1. темный режим
  2. светлый режим

Я хочу, чтобы мое приложение переключалось между этими 2 темами во время выполнения, когда MobX хранит состояние магазина. Вот мой main.dart:

void main() => runApp(MyApp());
final appStore = new AppStore();

class MyApp extends StatelessWidget {
  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'my app',
      theme: getThemeData(appStore.isDarkMode),
      home: MyHomePage(appStore: appStore),
    );
  }

  getThemeData(bool isDarkMode) {
    if (isDarkMode) {
      return ThemeData(
          brightness: Brightness.dark,
          primarySwatch: Colors.blue,
          fontFamily: 'Sumsung-sharp-sans');
    } else {
      return ThemeData(
          brightness: Brightness.light,
          primarySwatch: Colors.blue,
          fontFamily: 'Sumsung-sharp-sans');
    }
  }
}

Я хочу, чтобы при изменении пользователем appStore.isDarkMode обновлялась вся тема приложения и реагировала на нее, но она изменялась только при визуализации приложения в первый раз и не обновлялась при изменении магазина .
Есть идеи?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...