一尘不染

是否有Flutter的材料设计颜色图?

flutter

我有一个小部件,理想情况下,我希望采用基本的Material颜色并输出以该颜色的阴影为主题的小部件。例如:

return new Container(
  color: Colors.pink.shade50,
  child: new Text(
    'hello',
    style: new TextStyle(
      color: Colors.pink.shade100,
    ),
  ),
);

需要我指定两种阴影。理想情况下,我可以执行以下操作:

Color color = getBaseColorForThisPage(); // returns something like Colors.pink, but on another page, it'll return something like Colors.purple
return new Container(
  color: color.shade50,
  child: new Text(
    'hello',
    style: new TextStyle(
      color: color.shade100,
    ),
  ),
);

有没有一种方法可以在调色板中返回“材质”颜色的“映射”,而不仅仅是单一颜色?当我查看IntelliJ中的自动完成功能时,我看到在键入之后Colors.pink,就可以指定阴影。但是,如果我将颜色设置为变量,例如Color color = Colors.pink,以后我将无法执行color.shade100color[100]。谢谢!


阅读 244

收藏
2020-08-13

共1个答案

一尘不染

MaterialColor扩展ColorSwatch,有点像一种Map颜色。您可以ColorSwatch在可以使用a的任何位置使用Color并获得500阴影,但也可以使用对其进行索引[]

要获取List所有主要材料色板的,请使用Colors.primaries

2020-08-13