[英]How to add a AlertDialog in ListTile
每当我点击AlertDialog
时,我都想显示一个ListTile
。 我想在AlertDialog
的OnTap
功能中添加ListTile
,如代码所示。
import "package:flutter/material.dart";
void main() {
runApp(MaterialApp(
debugShowCheckedModeBanner: false,
title: 'Exploring Ui Widgets',
home: Scaffold(
body: getListView(),
),
));
}
Widget getListView() {
var listview = ListView(
children: <Widget>[
ListTile(
leading: Icon(Icons.accessible),
title: Text('Get Up!'),
subtitle: Text('Use your Legs!'),
trailing: Icon(Icons.accessible_forward),
onTap: () {
// I want to add a AlertDialog here!
},
),
ListTile(
leading: Icon(Icons.airline_seat_individual_suite),
title: Text('Wake Up!'),
subtitle: Text('Dont Sleep!'),
trailing: Icon(Icons.airline_seat_flat_angled),
)
],
);
return listview;
}
您可以这样做:
onTap: () => alertDialog(context),
然后声明此方法:
void alertDialog(BuildContext context) {
var alert = AlertDialog(
title: Text("My title"),
content: Text("Dialog description"),
);
showDialog(context: context, builder: (BuildContext context) => alert);
}
在您的代码中看起来像这样:
import "package:flutter/material.dart";
void main() {
runApp(MaterialApp(
debugShowCheckedModeBanner: false,
title: 'Exploring Ui Widgets',
home: Scaffold(
body: getListView(),
),
));
}
Widget getListView() {
var listview = ListView(
children: <Widget>[
ListTile(
leading: Icon(Icons.accessible),
title: Text('Get Up!'),
subtitle: Text('Use your Legs!'),
trailing: Icon(Icons.accessible_forward),
onTap: () {
onTap: () => alertDialog(context),
},
),
ListTile(
leading: Icon(Icons.airline_seat_individual_suite),
title: Text('Wake Up!'),
subtitle: Text('Dont Sleep!'),
trailing: Icon(Icons.airline_seat_flat_angled),
)
],
);
return listview;
}
void alertDialog(BuildContext context) {
var alert = AlertDialog(
title: Text("Dialog title"),
content: Text("Dialog description"),
);
showDialog(context: context, builder: (BuildContext context) => alert);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.