在很多安卓App上,有很多底部弹出的菜单,这个在Flutter上同样可以实现。
先看一下效果
嗯,就是这样子的,当用户点击菜单区域以外的时候,菜单会自动关闭。
下面就看一下Dart语言实现
floatingActionButton: new FloatingActionButton(
onPressed: () {
showModalBottomSheet(
context: context,
builder: (BuildContext context){
return new Column(
mainAxisSize: MainAxisSize.min,
children: <Widget>[
new ListTile(
leading: new Icon(Icons.photo_camera),
title: new Text("Camera"),
onTap: () async {
imageFile = await ImagePicker.pickImage(source: ImageSource.camera);
Navigator.pop(context);
},
),
new ListTile(
leading: new Icon(Icons.photo_library),
title: new Text("Gallery"),
onTap: () async {
imageFile = await ImagePicker.pickImage(source: ImageSource.gallery);
Navigator.pop(context);
},
),
],
);
}
);
},
foregroundColor: Colors.white,
child: Text('点我'),
),
可见,showModalBottomSheet只需要制定上下文context,在自己设计bulider即可。