我们在上一章回中介绍了
AlertDialog Widget
相关的内容,本章回中将介绍
AboutDialog Widget.
闲话休提,让我们一起Talk Flutter吧。
概念介绍
我们在这里说的AboutDialog
是一种弹出式窗口,和上一章回中介绍的AlertDialog类似,它主要用来显示应用程序信息,比如程序的名称、版本号、版权信息等。从
源代码上看,它是对AlertDialog的封装,可以看作是一种特殊的AlertDialog,本章回中将详细介绍它的使用方法。
使用方法
和其它的Widget一样,AboutDialog
提供了相关的属性来控制自己,接下来我们将介绍一些常用的属性:
- applicationName属性: 主要用来在弹出窗口中显示App的名字;
- applicationVersion属性: 主要用来在弹出窗口中显示App的版本信息;
- applicationIcon属性:主要用来在弹出窗口中显示App的图标;
- children属性: 主要用来在弹出窗口中添加其它组件。
AboutDialog
需要配合showDialog()
方法才能使用,该方法中包含两个重要的参数,一个是上下文的环境context,一个是builder,该参数主要用来构造对话框。这个方法我们在上一章回中使用过。
除此之外,我们还可以直接使用showAboutDialog()
方法显示AboutDialog.使用该方法时必须添加context类型的参数,其它的参数和AboutDialog的属性完全一样,我们就不列出了。下面是示例代码:
示例代码
//通过showDialog方法弹出窗口
_showAboutDialog() {
showDialog(
context: context,
builder: (BuildContext context){
return AboutDialog(
applicationName: "App Name",
applicationVersion: "v1.0",
applicationIcon: const Icon(Icons.android),
children: [
//可以不添加Buttonm,因为已经自带了两个Button
TextButton(
onPressed: () {
print("ok selected");
Navigator.of(context).pop();
},
child: const Text("Ok"),
)
],
);
},
);
}
//直接使用系统封装好的方法:showAboutDialog()
_showSystemAboutDialog() {
showAboutDialog(context: context,
applicationName: "app",
applicationVersion: "v111",
children: [
Text("Item 1"),
Text("Item 2"),
Text("Item 3"),
],
);
}
上面的代码中包含两种显示AboutDialog的方法:
- 一种是ShowDialog()方法和AboutDialog组件配合使用;
- 另外一种是直接使用ShowAboutDialog()方法;
从代码上可以看来showAboutDialog
方法使用更加方便。此外,AboutDialog会自带两个按钮:VIEW LICENSES和CLOSE
,点击VIEW LICENSES会跳转一个Flutter Licenses的网页,点击CLOSE会关闭窗口,这两个按钮是默认添加的,无法删除,这个可以从AboutDialog
的源代码中看出来。如果大家不理解的话,可以自己动手去运行程序,我在这里就不演示了。
看官们,关于AboutDialog Widget
相关的内容就介绍到这里,欢迎大家在评论区交流与讨论!