You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

28 lines
793 B

import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:get_storage/get_storage.dart';
class ThemeService {
final _box = GetStorage();
final _key = 'isDarkMode';
/// 获取主题模式
ThemeMode getThemeMode() {
final isDarkMode = isSavedDarkMode();
print('获取保存的主题: ${isDarkMode ? "暗黑" : "浅色"}');
return isDarkMode ? ThemeMode.dark : ThemeMode.light;
}
/// 是否是暗黑模式
bool isSavedDarkMode() {
final value = _box.read(_key);
print('从存储读取主题设置: $value');
return value ?? false;
}
/// 保存主题模式到本地存储
void saveThemeMode(bool isDarkMode) {
print('保存主题设置: ${isDarkMode ? "暗黑" : "浅色"}');
_box.write(_key, isDarkMode);
}
}