setLocalConfig method

dynamic setLocalConfig(
  1. dynamic id
)

获取存储的画线样式

Implementation

setLocalConfig(id) async {
  try {
    String idKey = '${id}drawkey';
    final prefs = await SharedPreferences.getInstance();
    //获取存储颜色值
    localConfig = prefs.getString(idKey) ?? '';
    if (localConfig != '') {
      //反序列号
      localConfig = json.decode(localConfig);
      for (var key in localConfig.keys) {
        //反序列化颜色
        for (var entry in localConfig[key].entries) {
          if(entry.value is Map){
            if(entry.value['color'] is List){
              entry.value['color'] = Tools.getColorFromList(entry.value['color'] as List);
            }
            if(entry.value['fillc'] is List){
              entry.value['fillc'] = Tools.getColorFromList(entry.value['fillc'] as List);
            }
          }
        }
        //更新配置
        config[key] = {...config[key] as Map, ...localConfig[key] as Map};
      }
    }
    //从新获取下,上面颜色已经被反序列化了,不能在使用
    localConfig = prefs.getString(idKey) ?? '';
    if(localConfig != ''){
      //反序列号
      localConfig = json.decode(localConfig);
    }else{
      localConfig = {};
    }
  } catch (error) {
    // print(error);
  }
}