setLocalConfig method
dynamic
setLocalConfig(
- dynamic id
获取存储的指标样式
Implementation
setLocalConfig(id) async {
try {
String idKey = '${id}zbkey';
final prefs = await SharedPreferences.getInstance();
//获取存储颜色值
localConfig = prefs.getString(idKey) ?? '';
// print('localConfig $localConfig');
if (localConfig != '') {
//反序列号
localConfig = json.decode(localConfig);
for (var key in localConfig.keys) {
//反序列化颜色
for (var entry in localConfig[key]['style'].entries) {
entry.value['color'] = Tools.getColorFromARGB(entry.value['color'] as List);
}
//更新配置
initConfig[key] = {...initConfig[key] as Map, ...localConfig[key] as Map};
}
}
//===========深度复制=============
for (var key in initConfig.keys) {
//反序列化颜色
for (var entry in initConfig[key]['style'].entries) {
entry.value['color'] = Tools.colorToARGB(entry.value['color']);
}
}
// //深度复制
config = Tools.deepCopy(initConfig);
//颜色反序列化
for (var key in initConfig.keys) {
//反序列化颜色
for (var entry in initConfig[key]['style'].entries) {
entry.value['color'] = Tools.getColorFromARGB(entry.value['color'] as List);
}
}
for (var key in config.keys) {
//反序列化颜色
for (var entry in config[key]['style'].entries) {
entry.value['color'] = Tools.getColorFromARGB(entry.value['color'] as List);
}
}
//=============================
//从新获取下,上面颜色已经被反序列化了,不能在使用
localConfig = prefs.getString(idKey) ?? '';
if(localConfig != ''){
//反序列号
localConfig = json.decode(localConfig);
}else{
localConfig = {};
}
} catch (error) {
// print(error);
}
}