forms - 使用 appBar 图标打开表单
问题描述
我想在我的 appBar 中使用一个图标来打开我的表单。目前我的表单位于我的应用程序(列)的正文中。我怎样才能做到这一点,而不是将表单放在正文中,我可以点击图标,然后会出现一个弹出窗口,有点像撰写推文?
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Social App'),
actions: <Widget>[
Padding(
padding: const EdgeInsets.only(right: 10.0),
child: IconButton(icon: Icon(Icons.add), onPressed: (){})
),
],
),
body: Column(
children: <Widget>[
Flexible(
flex: 0,
child: Card(
child: Form(
key: formKey,
child: Flex(
direction: Axis.vertical,
children: <Widget>[
ListTile(
leading: Icon(Icons.subject),
title: TextFormField(
initialValue: '',
onSaved: (val) => board.subject = val,
validator: (val) => val == "" ? val: null,
),
),
ListTile(
leading: Icon(Icons.message),
title: TextFormField(
initialValue: '',
onSaved: (val) => board.body = val,
validator: (val) => val == "" ? val: null,
),
),
FloatingActionButton(
child: Text('post'),
backgroundColor: Colors.pink,
onPressed: (){
handleSubmit();
},
),
],
),
),
),
),
如果还有什么我需要提供帮助的,请告诉我。并提前感谢。
解决方案
您可以将表单设置为其他页面并导航到它,或者作为Dialog
,并使用 将其显示在当前页面上showDialog
。
值可以通过共享模型、使用 BLoC 模式或通过Navigator.of(context).pop
.
推荐阅读
- node.js - 在 Express 或 Nest 函数中使用 Then 是更好的做法吗?
- swift - 从自定义类显式更新内容大小后,UIScrollView 不滚动
- python - shell命令运行带有args的python脚本,这是一个列表
- javascript - 反应选择保存道具
- java - 无法在硒中选择单选按钮的第二个选项
- mysql - 通过 R 更新 MySql 表的问题
- c - For 循环字符串赋值
- python - 用python替换bash脚本 - 检查进程是否正在运行?
- sql - SQl Live:显示列的最小值,加上同一张表中的对应值,加上第二张表中的相关值
- r - 为什么 cbind 与粘贴的列名相比会引发错误而不是手动输入列名?