如何获得所有key:通过flutter保存在sharedpreference中的值?

时间:2020-09-16 15:59:46

标签: flutter

你好,我有这个功能,它在调试模式下工作,但不在发布模式下工作...所以我搜索了解决方案以解决perhpas上没有此BUG的问题。

List<Widget> allkeys;
  get_all() async  {
    final SharedPreferences prefs = await SharedPreferences.getInstance();

    setState(() {
      allkeys=prefs.getKeys().map<Widget>((key) {
        return Text(key+ ":" + prefs.get(key).toString());
      }).toList();
    });
}

in debug mode allkeys =["key1:data1 , key2:data2"]
in release mode allkeys =[widget,widget]

所以我搜索只是提取所有使用sharedpreference保存的key:value。

如果我仅使用

   allkeys = prefs.getKeys();

我有这样的格式:

{key1,key2,value1,value2}

我搜索有:

`{key1:value1, key2:value2}`

1 个答案:

答案 0 :(得分:0)

最后,我像这样更改了我的代码,即使在发布模式下也可以使用,但是我必须更改所有正则表达式

n = 4
for i in range(n):
    print(' '*(n-i-1) + '* '*(i+1) )
for i in range(n):
    print(' '*(i+1) + '* '*(n-i-1))