1
0
mirror of https://github.com/nrop19/weiman_app.git synced 2025-08-02 23:05:48 +08:00
weiman_app/lib/provider/theme.dart
2020-11-07 21:18:42 +00:00

30 lines
778 B
Dart

import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import 'package:weiman/db/setting.dart';
class ThemeProvider extends ChangeNotifier {
ThemeMode themeMode = ThemeMode.system; // 主题模式
ThemeProvider(BuildContext context) {
themeMode = Provider.of<Setting>(context, listen: false).getThemeMode();
}
void changeTheme(ThemeMode mode) {
print('改变主题 $mode');
themeMode = mode;
notifyListeners();
}
void update(BuildContext context) {
final bright = MediaQuery.platformBrightnessOf(context);
switch (bright) {
case Brightness.light:
changeTheme(ThemeMode.light);
break;
case Brightness.dark:
changeTheme(ThemeMode.dark);
}
print('update $bright');
}
}