繁体   English   中英

如何将 AlertDialog 框中的文本字段更改为可点击项目列表,这些项目将在 flutter 中显示

[英]How do I change a textfield in an AlertDialog box to a list of clickable items which would be displayed in flutter

在我的日历表中,来自文本字段的输入当前显示如下。 但是,我想在输入后输入时将其更改为选项

这是我当前的代码:


    showDialog(
      context: context, 
      builder: (context) => AlertDialog(
        title: const Text('What is your mood today?'),
        content: TextField(
          controller: _eventController,
        ),
        actions: <Widget>[
          TextButton(
            child: Text("Save"),
            onPressed: () {
              if(_eventController!.text.isEmpty) return;
              setState(() {
                if(_events![_controller?.selectedDay] != null) {
                  _events![_controller?.selectedDay]!.add
                  (_eventController?.text);
                }else{
                  _events![_controller!.selectedDay] =
                  [_eventController?.text];
                }
                prefs?.setString("events", json.encode(encodeMap(_events!)));
                _eventController?.clear();
                Navigator.pop(context);
              });
            
            },
          )
        ],
      ));
  }

您可以使用包multi_select_flutter而不是返回一个AlertDialog返回一个MultiSelectDialog

showDialog(
  context: context,
  builder: (context) => MultiSelectDialog(
      items: _items,
      onConfirm: (values) {...},
  );
);

该软件包有详细的文档记录,因此您可以相当快地学会使用它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM