这里主要是使用原生框架做全局的状态管理
我的思路是使用管理类管理色彩配置
widget从管理类获取所需的色彩.实现色彩配置
所有常驻内存的widget向管理类递交方法用于色彩配置发生变化的时候被调用
而随界面出现而生成/消失的widget直接获取配置即可
首先创建一个管理类配置色彩
- 创建一个单例类
class SkinConfig{
factory SkinConfig() =>_getInstance();
static SkinConfig get instance => _getInstance();
static SkinConfig _instance;
SkinConfig._internal() {
// 初始化
}
static SkinConfig _getInstance() {
if (_instance == null) {
_instance = new SkinConfig._internal();
}
return _instance;
}
}
- 创建一个属性作为当前色彩类型的标记
//色彩类型
const String skinStyleDay = 'day';
const String skinStyleNight = 'night';
class SkinConfig{
//配色列表
static List skinStyleList = [
skinStyleDay,
skinStyleNight
];
//配色类型标记