我有一个Enum
和一个从String
创建它的函数,因为我找不到一种内置的方法来做到这一点
enum Visibility{VISIBLE,COLLAPSED,HIDDEN}
Visibility visibilityFromString(String value){
return Visibility.values.firstWhere((e)=>
e.toString().split('.')[1].toUpperCase()==value.toUpperCase());
}
//used as
Visibility x = visibilityFromString('COLLAPSED');
但是似乎我必须为我拥有的每个Enum重写这个函数,有没有一种方法可以编写同样的函数,其中它接受Enum类型作为参数?我试过了,但我发现我不能强制转换为Enum.
//is something with the following signiture actually possible?
dynamic enumFromString(Type enumType,String value){
}