Flutter 颤振:获取小部件的所有属性

Flutter 颤振:获取小部件的所有属性,flutter,dart,properties,widget,Flutter,Dart,Properties,Widget,我想创建一个新的小部件,它包装一个IconButton并覆盖它的onPressed属性,但我想让这个新的小部件接受所有IconButton的其他属性 在React Native中,我可以将一个组件的propsTypes设置为另一个组件的propsTypes 下面是一个我需要它的例子: class AudioWidget扩展了无状态Widget{ 最后的图标子; AudioWidget(this.child);//如何获取IconButton的所有属性? @凌驾 小部件构建(构建上下文){ 返回图

我想创建一个新的
小部件
,它包装一个
IconButton
并覆盖它的
onPressed
属性,但我想让这个新的
小部件
接受所有
IconButton
的其他属性

在React Native中,我可以将一个组件的
propsTypes
设置为另一个组件的
propsTypes

下面是一个我需要它的例子:

class AudioWidget扩展了无状态Widget{
最后的图标子;
AudioWidget(this.child);//如何获取IconButton的所有属性?
@凌驾
小部件构建(构建上下文){
返回图标按钮(
图标:孩子,
onPressed:()=>play(上下文),//一些自定义函数
);
}
}
您可以通过以一种黑客方式使用构造函数来“实现”这一点

class AudioWidget extends StatelessWidget {
  final Icon child;

  AudioWidget(this.child):mySize=child.size; // In the contructor now we are getting the size and assignin it to OUR size
  final double mySize;
  @override
  Widget build(BuildContext context) {
    return IconButton(
      icon: child,
      onPressed: () {}// Some custom function
    );
  }
}
另一个具有多个参数的示例是

class AudioWidget extends StatelessWidget {
  final Icon child;

  AudioWidget(this.child):
  this.mySize=child.size,
  this.myColor= child.color
  ;// How do I get all of IconButton's properties?
  final double mySize;
  final Color myColor;
  @override
  Widget build(BuildContext context) {
    return IconButton(
      icon: child,
      onPressed: () {}// Some custom function
    );
  }
}

我几乎可以肯定你不能用Dart获得这些属性。即使你可以,我很确定你不能把这些属性传播到IconButton上。不幸的是,您必须在构造函数中添加所需的属性,并将它们传递到IConButton不确定我是否遵循,您如何处理
mySize
?如果我没有弄错的话,您建议重新实现
IconButton
中存在的逻辑,这绝对是我想要避免的。