代码这块理论还不如实操,多写有感觉
PopupMenuButton(弹出菜单组件)
import 'package:flutter/material.dart';
void main() => runApp(new MyApp());
// 会控菜单项
enum ConferernceItem { AddMember, LockConference, ModifyLayout, TurnofAll }
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new MaterialApp(
title: '弹出菜单栏',
home: Scaffold(
appBar: AppBar(
title: Text('弹出菜单栏'),
),
body: Center(
child: FlatButton(
onPressed: () {},
child: PopupMenuButton<ConferernceItem>(
onSelected: (ConferernceItem result) {},
itemBuilder: (BuildContext context) =>
<PopupMenuEntry<ConferernceItem>>[
const PopupMenuItem<ConferernceItem>(
value: ConferernceItem.AddMember,
child: Text("添加成员"),
),
const PopupMenuItem<ConferernceItem>(
value: ConferernceItem.LockConference,
child: Text("设定会议"),
),
const PopupMenuItem<ConferernceItem>(
value: ConferernceItem.ModifyLayout,
child: Text("修改布局"),
),
const PopupMenuItem<ConferernceItem>(
value: ConferernceItem.TurnofAll,
child: Text("挂断所有"),
),
],
),
),
),
));
}
}
SnackBar(轻量级提示组件)
import 'package:flutter/material.dart';
void main() => runApp(new MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'SnackBar',
home: Scaffold(
appBar: AppBar(
title: Text('SnackBar'),
),
body: Center(
child: Text(
'SnackBar 示例',
style: TextStyle(fontSize: 28.0),
),
),
floatingActionButton: new Builder(builder: (BuildContext context) {
return new FloatingActionButton(
child: const Icon(Icons.add),
onPressed: () {
Scaffold.of(context).showSnackBar(new SnackBar( //调用提示信息方法
content: new Text("显示SnackBar"),
));
},
shape: new CircleBorder(),
);
}),
floatingActionButtonLocation: FloatingActionButtonLocation.endFloat,
));
}
}