Flutter,将文本字段插入 sqflite

问题描述 投票:0回答:1

我尝试使用文本字段填写 sqflite 表,但它创建一个单独的表,而不是填写各个字段

class _InputBarState extends State<InputBar> {
  final _controller = TextEditingController();
  final _controller1 = TextEditingController();
  final _controller2 = TextEditingController();
  final _focusNode = FocusNode();

  String get text => _controller.text.trim();
  String get qnt => _controller1.text.trim();
  String get um => _controller2.text.trim();

...

TextField(
controller: _controller,
),

TextField(
controller: _controller1,
),

TextField(
controller: _controller2,
),

IconButton(
                  color: primaryColor,
                  padding: const EdgeInsets.only(right: 10),
                  icon: const Icon(Icons.add),
                  onPressed: text.isEmpty || um.isEmpty || qnt.isEmpty  ? null : () => _onSubmitted(text, um, qnt),
                ),

...

  void _onSubmitted(String text, String qnt, String um) {
    if (text.isEmpty || qnt.isEmpty || um.isEmpty) return;

    widget.onSubmitted(text);
    widget.onSubmitted(qnt);
    widget.onSubmitted(um);
    _controller.clear();
    _controller1.clear();
    _controller2.clear();
    _focusNode.requestFocus();
  }

如果我在 3 个字段中填写:1、2、3,我将附加图像作为输出。 相反,它应该是单行,例如:1 2 3

Text(item.name + item.qnt + item.um ),

帮助解决这个问题

flutter textfield sqflite
1个回答
0
投票

您提供的代码不足以阐明问题。如果您能提供

widget.onSubmitted(text)
回调的代码片段那就太好了。

但是假设您想将 textqntum 值存储在单行中,则必须将回调更改为如下所示,而不是使用 text、qnt、um 单独调用它:

widget.onSubmitted(text: text, qnt: qnt, um: um)
© www.soinside.com 2019 - 2024. All rights reserved.