按下按钮时如何显示警报对话框?



以下是我的主页.dart运行良好的部分,但单击IconButton没有任何反应。

...
return Scaffold(
appBar: AppBar(
title: Text('Lorem Ipsum'),
leading: IconButton(      
icon: Icon(Icons.info),
onPressed: () => AboutWidget(),
),
),
body: ...

这是我的about_widget.dart文件,其中定义了我的AboutWidget。 我做错了什么?

import 'package:flutter/material.dart';
class AboutWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return AlertDialog(
title: Text('data'),
);
}
}

你必须调用showDialog函数

AppBar(
title: Text('Lorem Ipsum'),
leading: IconButton(
icon: Icon(Icons.info),
onPressed: () => showDialog(
context: context,
builder: (context) => AboutWidget(),
),
),
)

使用 Flutter 原生showDialog函数显示对话框。

对于您的代码,您可以尝试以下操作:

return Scaffold(
appBar: AppBar(
title: Text('Lorem Ipsum'),
leading: IconButton(      
icon: Icon(Icons.info),
onPressed: () => showDialog(
context: context,
builder: (context){
return AboutWidget();
}
),
),
),
);

因此,当按下按钮时,您应该调用showDialog方法。

按下按钮时,您正在呼叫AboutWidget()。它是一个无状态的小部件。因此,它需要在应用的构建方法中构建。 在按钮上单击此按钮不会显示对话框。请改用showDialog方法,并在其中使用警报对话框在屏幕上显示对话框。

相关内容

  • 没有找到相关文章

最新更新