您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何将Flutter颜色转换为字符串并转换回颜色

如何将Flutter颜色转换为字符串并转换回颜色

在Dart中,as运算符不允许您更改对象的实际结构,而只是允许您提供提示,表明对象 可能 具有更特定的类型。例如,如果你有一只狗,你可以作为使用动物类,指定你的动物实际上是一个狗(只要对象 实际上是狗)。

class Animal {}
class Dog extends Animal {}

Animal animal = new Dog();
Dog bob = animal as Dog; // works, since animal is actually a dog
Animal animal2 = new Animal();
Dog bob2 = animal2 as Dog; // fails, since animal2 is actually an Animal

现在,在您提供的示例中,toString实际上只是创建了当前Color值的String表示形式。而且,由于这个对象是一个字符串,你不能改变它回Coloras。相反,您可以将String解析为一个值并构造一个Color对象。

Color color = new Color(0x12345678);
String colorString = color.toString(); // Color(0x12345678)
String valueString = colorString.split('(0x')[1].split(')')[0]; // kind of hacky..
int value = int.parse(valueString, radix: 16);
Color otherColor = new Color(value);
其他 2022/1/1 18:23:12 有641人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶