gpt4 book ai didi

function - Flutter,如何减少重复的widget

转载 作者:行者123 更新时间:2023-12-04 15:37:49 29 4
gpt4 key购买 nike

谢谢你帮助我。

我想做的是减少下面代码的重复;

 class PeddingRadius extends StatelessWidget {
PeddingRadius(final column);

@override
Widget build(BuildContext context) {
Container(
padding: const EdgeInsets.all(8.0),
child: Material(
borderRadius: BorderRadius.circular(30),
shadowColor: Colors.grey.shade100,
elevation: 5,
child: //my code
),
)
}
}

有没有一种方法可以在函数或方法之上创建并在下面插入代码?

                  Image.asset(
'asset/images/HelloWorld.png', height: 100.0, width: 100.0,
),
Text('Hello World, form Dart'),

最佳答案

只需将子属性添加到 PeddingRadius

class PeddingRadius extends StatelessWidget {
final Widget child;

PeddingRadius({@required Widget child});

@override
Widget build(BuildContext context) {
return Container(
padding: const EdgeInsets.all(8.0),
child: Material(
borderRadius: BorderRadius.circular(30),
shadowColor: Colors.grey.shade100,
elevation: 5,
child: child,
),
);
}
}

然后给它任何你想要的 child 。

PeddingRadius(
child: Column(
children: [
Image.asset(
assetLocation, height: 100.0, width: 100.0,
),
Text(text),
],
),
)
// or
PeddingRadius(
child: RaisedButton(child: Text("Hello World")),
)

这与@dkap 的答案基本相同,带有自己的小部件类,并且可重用性更高一些,因为它接受所有类型的子项。

关于function - Flutter,如何减少重复的widget,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59141604/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com