Flutter 在主题数据中的何处存储阴影颜色?

Flutter 在主题数据中的何处存储阴影颜色?,flutter,flutter-layout,Flutter,Flutter Layout,1-我有一个带有方框阴影的容器,该阴影根据主题具有不同的颜色。在主题数据中,阴影颜色具体存储在哪里?我将容器的颜色存储在canvasColor中,但我不确定将阴影颜色放在何处。所以我可以很容易地做主题。的(上下文) 2-在制作单独的主题时,我是否可以返回主题数据(myStuff)而不是执行主题数据().copyWith(myStuff)?还是用推荐的方式复制 通常不会按主题更改阴影。如果是的话。。您可以创建自己的类并在其中存储阴影 class MyShadows { static const

1-我有一个带有方框阴影的容器,该阴影根据主题具有不同的颜色。在主题数据中,阴影颜色具体存储在哪里?我将容器的颜色存储在
canvasColor
中,但我不确定将阴影颜色放在何处。所以我可以很容易地做主题。的(上下文)

2-在制作单独的主题时,我是否可以
返回主题数据(myStuff)而不是执行
主题数据().copyWith(myStuff)?还是用推荐的方式复制

  • 通常不会按主题更改阴影。如果是的话。。您可以创建自己的类并在其中存储阴影

    class MyShadows {
      static const primaryShadow =
        Shadow(color: Colors.black, blurRadius: 3, offset: Offset(2, 3));
    
     static const secondaryShadow =
       Shadow(color: Colors.black, blurRadius: 3, offset: Offset(2, 3));
    }
    
    ...
    Container(
      decoration: BoxDecoration(boxShadow: [MyShadows.primaryShadow]),
    );
    
  • 没关系。当您执行主题数据()时。copyWith(yourStuff)-通过调用copyWith,创建主题数据的新实例,然后从中创建另一个实例