Flutter showDialog、AlertDialog背景渐变。

4 dart flutter

对于颜色,我可以使用dialogBackgroundColor属性为背景提供AlertDialog我自己的颜色。

我想用它Gradient作为我的背景。我该如何使用它?DecoratedBox是需要的东西,但我不知道该用什么包裹起来。谁能给我同样的想法或链接?

Val*_*ova 5

您可以添加一个容器,其中将用渐变装饰。例如:

class GradientDialog extends StatefulWidget {
  @override
  State<StatefulWidget> createState() {
    return new _GradientDialogState();
  }
}

class _GradientDialogState extends State<GradientDialog> {

  @override
  Widget build(BuildContext context) {
    return AlertDialog(
      content: Container(
        constraints: const BoxConstraints(),
        padding: const EdgeInsets.all(8.0),
        decoration: new BoxDecoration(
            gradient: new LinearGradient(
                colors: AppColors.BG_GRADIENT,
                begin: Alignment.topCenter,
                end: Alignment.bottomCenter)),
        child: YourContentInside(),

      ),
      contentPadding: EdgeInsets.all(0.0),
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

打开它

showDialog(
    context: context,
    barrierDismissible: true,
    builder: (BuildContext context) {
      return GradientDialog();
    });
Run Code Online (Sandbox Code Playgroud)