【问题标题】:How to deal with more than 60 TextFormField in a single screen in flutter?Flutter中如何处理单屏60多个TextFormField?
【发布时间】:2020-10-05 11:21:41
【问题描述】:

我正在开发一个必须根据用户输入生成 PDF 的应用程序。但我需要从用户那里获取 60 多个输入。

那么我该如何处理呢?

我知道的一种常见方法是为每个字段创建TextEditingController 并在函数体中传递所有 60+ 字段的数据以生成 PDF,但我从未在单个屏幕中使用过 60+ 控制器所以我很困惑如何处理用它。

请告诉我更好的方法。

【问题讨论】:

    标签: flutter texteditingcontroller


    【解决方案1】:

    如果您想访问 TextFields 中的值,您有 2 个选项(afaik):

    1. 创建 60 个TextEditingController
    2. 创建 60 个变量(或 1 个映射,或 1 个列表),并利用 TextField WidgetonChange 属性更改这些值

    我个人会选择一张以字段标题为键的地图,但这取决于你!

    【讨论】:

    • 我正在尝试第二个。我将数据存储在地图中,因为我将能够使用键获取数据(因为列表数据只能使用索引访问,所以这将是另一个混​​乱)。
    • 很高兴它对您有用。如果它解决了您的问题,请不要忘记投票并验证答案! :)
    • 好吧。它按预期工作。 see image 还有 1 个问题,如何将这些所有用户输入传递给函数?
    • 只需将您的地图作为参数,例如: void processUserInputs(Map userInputs) {print("Do something");}
    猜你喜欢
    • 2023-01-07
    • 2019-12-26
    • 2021-08-23
    • 2021-10-05
    • 2020-02-07
    • 2017-12-25
    • 2020-07-12
    • 2022-11-01
    • 2018-07-29
    相关资源
    最近更新 更多