问题标签 [flutter-form-builder]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
flutter - Flutter:如何在另一个字段中将其他值(对象)分配为文本编辑控制器?
我正在构建一个包含联系人姓名和电话号码字段的表单。用户将能够从以前保存的联系人列表中选择(点击)联系人,这应该在各自的字段中显示姓名和电话号码。
为了实现这一点,我使用 Flutter_Form_Builder Package version: 3.14.0 中的 TypeAheadFormField 来构建我的表单。
我在默认的 TypeAheadFormField 控制器中成功地从本地数据库分配了 _nameController。但是我不能从我点击到 FormBuilderTextField 的同一选择中分配 _mobileController。
我设法使用 TypeAheadFormField 获得“名称”值,但每次我从建议中切换选择时,_mobileController.text 都没有在 FormBuilderTextField 上更新
我的代码如下:
有什么方法可以在我点击时更新 _mobileController 吗?
任何帮助将非常感激。先感谢您。
编辑:
我保存客户数据的类:
这是我的数据库:
flutter - 带有图像选择器的 Flutter 表单构建器
我使用包 flutter_form_builder 在我的应用程序中收集数据。
特别是我正在使用 FormBuilderImagePicker 控件来允许用户从画廊或相机中选择照片。
使用 then() 部分调用未来的 uploadImage 后出现错误。变量“值”似乎永远不会填充任何东西,我假设 add 调用失败,因为 imageUrl 为空;
我收到下载链接只是文件。
我期待未来完成,将下载链接添加到该州的字符串列表中
未来
堆栈跟踪
android - Flutter 表单构建器 - FormBuilderImagePicker
我让我的用户从图库或使用相机将图像上传到我的应用程序。然后图像作为字符串存储在 SQflite 数据库中
此代码在flutter_form_builder v3上运行良好,现在迁移到v4后,val的值永远不会更新到所选图像,因为我收到以下错误:
我一直在尝试调试这个几个小时,但没有成功,任何帮助将不胜感激!
flutter-layout - 如何格式化 FormBuilderRate(Flutter Form Builder 包)?
我正在尝试在 flutter_form_builder 包中格式化 FormBuilderRate 的外观(链接到 pub.dev 上的包)。
具体来说,
- 如何消除或更改项目之间的水平线格式
- 如何垂直对齐前缀文本(例如,下面屏幕截图中的“Wwww...”)与评分星的底部或中心
- 如何对齐前缀文本的所有四个实例的右侧和评级星的左侧,前缀文本和最左边的星之间的差距更小(现在我正在使用 hackey
padding: const EdgeInsets.only
方法)
这是代码:
更新#1部分答案:
@Miller's answer below usingInputDecoration(border: InputBorder.none),
删除了这些行,但没有解决对齐前缀文本和星号的问题。
即便如此,这里是部分解决方案代码:
这是在 Android 模拟器中的样子(前两个评分行使用 @Miller 的方法,它不能解决 #2 前缀垂直文本对齐问题):
更新#2:解决了垂直对齐前缀文本与评级星的问题:
根据@Joe Muller在此处的部分回答,我将实际文本设为透明,添加了阴影,然后将阴影定位在高于原始文本的位置。
这是代码的那一部分:
这是更改的屏幕截图:
剩下的是我原来的问题中的#3:如何将前缀文本的所有四个实例的右侧和评级星的左侧对齐,前缀文本和最左边的星之间的差距更小(现在我是使用 hackey 填充: const EdgeInsets.only 方法)
flutter - 在同步调用中返回 Future 的结果
我正在使用 FlutterFormBuilder 包中的签名板来捕获签名(FlutterFormBuilderSignaturePad),将其上传到 firebase 存储,然后将下载 url 返回到应用程序以存储在 firestore 中的文档中。
我面临的问题是上传需要几秒钟才能完成(在连接不良时可能更长)。我正在尝试等待电话,以便我可以将下载网址传递给数据库,但它忽略了我的尝试。
我试过了 :
.then()
使用and.whenComplete()
但 valueTransformer链接我的调用仍然返回一个空白字符串。- 将异步添加到“valueTransformer”、“onSaved”和“onChange”方法并等待调用
- 在上述三个方法之间移动了保存签名的逻辑,以便给 uimage 上传时间
- onChanges 触发了很多,所以我引入了一个 _processing 标志,因此它没有多次保存图像并导致数据库超时。onChange 在几秒钟后返回了一个 url,但是我不能保证签名是完整的。
所以我的小部件看起来像这样:
我处理上传和设置状态的未来
以下更改后的更新
进程签名:
签名板小部件:
我看到“未来”的方法
forms - 如何让“Flutter Form Builder”从 RFlutter Alert 中的问题中识别提交的表单数据?
我正在使用“Flutter Form Builder”包 4.0.2构建一个表单。
大多数表单问题都在屏幕上,但最后两个问题在使用RFlutter Alert 包 1.1.0创建的连续*弹出窗口中
*“成功”是指在主窗体屏幕底部有一个“发布”按钮(见下面的第一张图片)。按下时,会出现一个 RFlutter 警报弹出窗口(请参见下面的第二张屏幕截图),其中包含倒数第二个 FormBuilderRadioGroup 问题(“q11”)。当按下“下一步”按钮时,会出现另一个 RFlutter 警报弹出窗口,其中会出现最后一个 FormBuilderRadioGroup 问题(“q12”)。当此处的“Finish Posting”按钮被按下时,整个 Flutter Form Builder 表单提交。
用户界面运行良好,但问题与随表单提交的警报弹出窗口(Q11 和 Q12)中的问题无关(请参阅下面的控制台快照 - q1、q2 和 q3 也有问题,但这不是我的问题在这里询问)。
这是代码(跳过不相关的部分,因为长度):
续(跳过 AppBar):
续(跳过 Q2 - Q9):
最后(跳过 Q12):
谢谢!
forms - 如何将“material_tag_editor”中用户提交的标签数据添加到“Flutter Form Builder”表单中?
我正在使用“Flutter Form Builder”包 4.0.2构建一个表单,并尝试添加两个字段,用户通过“material_tag_editor”包 0.0.6在其中输入“标签”
问题:当通过按下“发布”按钮提交表单时,不包括为这些“标签”表单字段(Q1 或 Q3)提交的数据(参见下面的控制台屏幕截图)。
请注意“flutter: {qFour: 30, qFive: sample answer to q5, qTen: sample answer to q10}”这一行 - Q1 和 Q3 都不包括在内(我在单独的打印语句中添加了它们的数据,因此您可以在控制台中看到它们- 寻找>>>
线条)。
以下是输入了示例标签的表单屏幕截图(iPhone 模拟器屏幕截图),以及带有按钮的表单底部:
这是代码:
flutter - 在 Flutter 中的屏幕之间来回导航时,保持 TextFormFields 中的用户输入持续存在
我是新来的颤振,任何帮助将不胜感激。
我在两个不同的屏幕上有两个单独的表格。单击“下一步”按钮验证表单并Navigator.push()
使用第二个表单运行到我的下一个屏幕,之后如果我填写第二个表单的 TextFormFields 并初始化保存然后Navigator.pop()
返回到第一个表单,第一个表单中的数据页面仍然填写,但是一旦我再次运行 Navigator.push() 返回到第二个表单,TextFormFields 是空的。
我的目的是让用户数据在TextFormFields
两个表单中输入后,在不同的屏幕中来回导航。
我尝试initialValue
在 TextFormFields 上使用,但没有奏效。
要导航回来,我正在使用运行后自动创建的后退按钮Navigator.push
这是第一页:
这是第二页:
flutter - 在 Flutter 中使用正则表达式验证 URL,而不需要它
我正在 Flutter 中创建一个表单并想要以下功能:
- 如果用户输入一个 URL,我想用正则表达式确保它是有效的。
- 如果用户将该字段留空,我不想返回错误消息。
当我执行这四个步骤时,以下 Reg Exp 验证器会以这种方式执行:
- 如果我热重载并输入一个有效的 URL,它就会接受它。
- 如果我将输入字段更改为新的无效 URL,它仍然会接受它。
- 如果我热重载并输入无效的 URL,它不接受它。
- 如果我将 URL 更改为有效的 URL,它仍然不接受它。
就好像它只运行验证器一次,然后不再检查任何后续条目。我确实有一个使用 value.isEmpty 作为验证器的字段,并且每次单击带有 _formKey.currentState.save(); 的按钮时检查输入,它确实按预期工作。
...其他领域...
如何确保每次单击提交时它都会执行验证器?