Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 为什么我的函数不接受Colors类型的参数的名称?_Flutter_Dart - Fatal编程技术网

Flutter 为什么我的函数不接受Colors类型的参数的名称?

Flutter 为什么我的函数不接受Colors类型的参数的名称?,flutter,dart,Flutter,Dart,我试图创建一个函数,在该函数中可以传入有关颜色名称的参数,但这显示了以下错误: The getter $colorName isn't defined for the type Colors 我的职能如下: void makeButton({Colors colorName, int soundNumber}) { Container( color: Colors.$colorName, child: FlatButton( onPre

我试图创建一个函数,在该函数中可以传入有关颜色名称的参数,但这显示了以下错误:

The getter $colorName isn't defined for the type Colors
我的职能如下:

void makeButton({Colors colorName, int soundNumber}) {     
    Container(
      color: Colors.$colorName,
      child: FlatButton(
        onPressed: () {
          print('Hello');
        },
      ),
    );
  }

我的错误到底是什么?

这是传递
颜色的一个非常小的片段

class MyWidget extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return getContainer(colorName: Colors.yellow);
  }
  
  Widget getContainer({Color colorName}){
    return Container(
      color: colorName,
        child: Text('Hello, World!'));
  }
}
在你的例子中,它是

class MyWidget extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return makeButton(colorName: Colors.yellow);
  }
  
Widget makeButton({Color colorName, int soundNumber}) {     
   return Container(
      color: colorName,
      child: FlatButton(
        child:Text('Flat Button'),
        onPressed: () {
          print('Hello');
        },
      ),
    );
  }
}

这是传递
Color

class MyWidget extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return getContainer(colorName: Colors.yellow);
  }
  
  Widget getContainer({Color colorName}){
    return Container(
      color: colorName,
        child: Text('Hello, World!'));
  }
}
在你的例子中,它是

class MyWidget extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return makeButton(colorName: Colors.yellow);
  }
  
Widget makeButton({Color colorName, int soundNumber}) {     
   return Container(
      color: colorName,
      child: FlatButton(
        child:Text('Flat Button'),
        onPressed: () {
          print('Hello');
        },
      ),
    );
  }
}

应该是
Color
({Color colorName,int soundNumber})
。嘿,@dev aentgs,我试过了,但不认为这是正确的答案!传递给
colorName
的值是什么?在定义函数本身时会出现错误;如果我能让它工作的话,我打算把诸如“红”和“蓝”之类的颜色名称传给它。(感谢回复)哦,好的,你可以试试下面的方法。将
Colors.TargetColor
传递给方法。应该是
Color
({Color colorName,int soundNumber})
。嘿,@dev aentgs,我试过了,但我不认为这是正确的答案!传递给
colorName
的值是什么?在定义函数本身时会出现错误;如果我能让它工作的话,我打算把诸如“红”和“蓝”之类的颜色名称传给它。(感谢回复)哦,好的,你可以试试下面的方法。将
Colors.TargetColor
传递给方法。
Colors.target\u color
返回
color
类型。
Colors.target\u color
返回
color
类型。