如何在颤动中显示带有动画的自定义对话框?

Posted

技术标签:

【中文标题】如何在颤动中显示带有动画的自定义对话框?【英文标题】:how to show a Custom Dialog Box with animation in flutter? 【发布时间】:2021-11-06 08:42:23 【问题描述】:

我想在颤动中按下按钮时显示这样的自定义对话框,是否有任何包或小部件可以存档?

【问题讨论】:

【参考方案1】:

据我所知,没有您需要的软件包。

您必须make custom widget 确保root of the widget is StatefulBuilder 才能让您的轮播按需要工作。

然后简单地调用

showDialog(
    context: context,
    builder: (BuildContext context) => WidgetYouMade()
);

【讨论】:

【参考方案2】:

这是此类小部件(自定义对话框)的最佳方法,这将为您提供良好的比例转换,您可以将任何小部件设置为自定义对话框。

showGeneralDialog(
    barrierColor: Colors.black.withOpacity(0.5),
    transitionBuilder: (context, a1, a2, widget) 
      return Transform.scale(
        scale: a1.value,
        //here inside opacity define your child instead projectdetails()
        child: Opacity(opacity: a1.value, child: ProjectDetails()),
      );
    ,
    transitionDuration: Duration(milliseconds: 200),
    barrierDismissible: true,
    barrierLabel: '',
    context: context,
    pageBuilder: (context, animation1, animation2) 
    //return a emty container 
      return Container();

    );

【讨论】:

以上是关于如何在颤动中显示带有动画的自定义对话框?的主要内容,如果未能解决你的问题,请参考以下文章

如何在android中制作带有圆角的自定义对话框

如何在颤动中加载数据之前显示进度对话框?

如何使用此按钮中的条件在颤动中显示警报对话框?

带有自定义图标的applescript显示对话框

如何使用 React-Transition-Group 显示和隐藏带有动画的模态/对话框?

更改material-ui对话框显示的动画