有没有将整数值转换为枚举的简单方法?我想从共享首选项中检索一个整数值,并将其转换为枚举类型.

我的枚举是:

enum ThemeColor { red, gree, blue, orange, pink, white, black };

我想轻松地将整数转换为枚举:

final prefs = await SharedPreferences.getInstance();
ThemeColor c = ThemeColor.convert(prefs.getInt('theme_color')); // something like that

推荐答案

int idx = 2;
print(ThemeColor.values[idx]);

应该给你

ThemeColor.blue

Flutter相关问答推荐

壁炉有序在Flutter

如何使用新的Riverpod语法将依赖传递给AsyncNotifier?

带有可滚动页面(不包括分页区)的Flutter 页面视图

如何在FiRestore中正确编写OR查询

如何从文本比例因子迁移到文本比例因子

Wired Firebase错误-[CLOUD_FIRESTORE/UNAvailable]该服务当前不可用

Flutter中的编译时间常量方法

StateNotifer正在riverpod中提供初始状态值(bool)

如何在flutter中将所有单词的第一个字母大写

如何修改来自合并 list 的 Android list 权限?

在使用 Android 12+ 的真实 Android 设备上,SingleChildScrollView 中最初位于视口之外的无响应 Web 视图

无状态小部件被奇怪地重建

我可以在列表图块下方添加其他小部件吗

Flutter - 展开图标无法正常工作

如何在 Flutter 中测试动画图标

容器在发布模式下显示灰色框(抖动)

statefulWidget 无法进行所需更改的问题

单元测试中如何比较NaN和NaN是否相等

如何按值对列表中的 map 进行排序

如何在flutter中共享容器和gridview之间的滚动条?