颤振我如何在alertDialog中显示视频

时间:2020-04-12 16:44:25

标签: flutter dart flutter-layout flutter-animation

我想在alertDialog小部件中显示视频,但是我不知道如何在alertDialog小部件中显示视频。这是我的代码。

class ResultScreen extends StatelessWidget {
static const routeResult = '/result-screen';
@override
Widget build(BuildContext context) {
return Scaffold(
    appBar: AppBar(
        title: Text('The Result'),
        backgroundColor: Colors.brown,
        elevation: 0.0),
    drawer: SideManu(),
    body: ListView(children: <Widget>[
      Container(
          child: Stack(children: <Widget>[
        Background(),
        MoodText(),
        ShowLevel(),
        ActivityText(),
        ActivityClip()
      ]))
    ]));
 }
}

这是我打开视频按钮的代码

class ActivityClip extends StatelessWidget {
final List<String> numbers = [
  'Soft Music',
  'Meditation',
  'Pray',
  'Breathing',
  'Relex'
];
@override
Widget build(BuildContext context) {
return Container(
    margin: const EdgeInsets.only(right: 10, left: 10, top: 350),
    height: MediaQuery.of(context).size.height * 0.3,
    child: ListView.builder(
        scrollDirection: Axis.horizontal,
        itemCount: numbers.length,
        itemBuilder: (context, index) {
          return Container(
              width: 200,
              margin: const EdgeInsets.only(right: 10),
              child: RaisedButton(
                color: Colors.brown,
                child: Container(
                  child: Center(
                      child: Text(
                    numbers[index].toString(),
                    style: TextStyle(color: Colors.white, fontSize: 30.0),
                  )),
                ),
                onPressed: () {
                 activityVideo(context);
                 //alertDialog to show a video
                },
              ));
        }));  
 }

这是我的alertDialog代码。我打算在此对话框中显示一个视频剪辑。

void activityVideo(BuildContext context){
var alertDialog = AlertDialog(
  title: Text("videoclip"),
  actions: <Widget>[
          FlatButton(
              child: Text('Rate'),
              onPressed: () {
                rateVideo(context);
              }),
              FlatButton(
              child: Text('Finish'),
              onPressed: () {
                Navigator.of(context).pop();
              }),
        ],
);
showDialog(context: context,
builder: (BuildContext context){
  return alertDialog;
}
);
}

您向我展示了一个展示视频的示例云。或者,如果有任何好的方法来显示视频,则可以建议我。非常感谢。

这是我的应用图片,可让您更加清晰。这是我的页面,如果您单击以进行活动,它将弹出视频片段。

home page

这是我打算显示视频的对话框。

alertDialog

1 个答案:

答案 0 :(得分:0)

AlertDialog有一个内容字段,您可以轻松地向其发送小部件。查看文档以获取简单示例。此外,要显示视频,请使用video_player包。由Flutter团队发布的简单教程支票this post