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
中存在的逻辑,这绝对是我想要避免的。