Flutter-创建一个自定义样式的“容器”小部件,以“投影”子内容

问题描述

我想创建一个始终具有渐变背景的自定义容器窗口小部件。原因是只将渐变编码在一个位置,因此可以在一个位置更改它,但会影响整个应用程序。

我认为这是

child: Container(
      height: double.infinity,width: double.infinity,padding: const EdgeInsets.all(40),decoration: BoxDecoration(
        gradient: LinearGradient(
          begin: const Alignment(1,-1.0),end: const Alignment(-0.3,0.0),colors: [
            initialGradientColor,Theme.of(context).colorScheme.primary
          ],),child: Column(
        mainAxisAlignment: MainAxisAlignment.spaceEvenly,children: [...more code...

我可以像这样提取到容器小部件吗?:

class GradientContainerWidget extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Container(
      child: // ****************** project content into here... ****************
      height: double.infinity,colors: [initialGradientColor,Theme.of(context).colorScheme.primary],);
  }
}

我需要找到一种将孩子添加到GradientContainerWidget中的方法。有没有办法将内容投射到小部件的子项中??

视图中的用法如下:

child: GradientContainerWidget(
                child: Column(mainAxisAlignment: MainAxisAlignment.spaceEvenly,children: [..... more children....])
            );

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)