34 lines
990 B
Dart
34 lines
990 B
Dart
import 'package:flutter/material.dart';
|
|
import 'package:get/get.dart';
|
|
import 'package:get_storage/get_storage.dart';
|
|
|
|
import '../views/theme.dart';
|
|
|
|
class GlobalController extends GetxController{
|
|
|
|
// bool box = GetStorage().read("isDarkMode");
|
|
// final key = 'isDarkMode';
|
|
// bool loadThemeFromBox() => GetStorage().read('isDarkMode') ?? true;
|
|
|
|
|
|
|
|
// saveThemeToBox(bool isDarkMode) => box.write(key, isDarkMode);
|
|
|
|
// RxBool darkMode = box.read(key) ?? true.obs;
|
|
// bool darkMode = loadThemeFromBox();
|
|
|
|
final box = GetStorage();
|
|
final key = 'isDarkMode';
|
|
|
|
saveThemeToBox(bool isDarkMode) => box.write(key, isDarkMode);
|
|
|
|
bool loadThemeFromBox() => box.read(key) ?? true;
|
|
ThemeMode get theme => loadThemeFromBox() ? ThemeMode.dark : ThemeMode.light;
|
|
void switchTheme() {
|
|
Get.changeThemeMode(loadThemeFromBox() ? ThemeMode.light : ThemeMode.dark);
|
|
saveThemeToBox(!loadThemeFromBox());
|
|
}
|
|
|
|
RxBool darkMode = RxBool(ThemseServices().loadThemeFromBox());
|
|
|
|
} |