Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 如何在颤振中创建数字选择器作为警报对话框?_Flutter_Dialog_Numberpicker_Product Quantity_Flutter Alertdialog - Fatal编程技术网

Flutter 如何在颤振中创建数字选择器作为警报对话框?

Flutter 如何在颤振中创建数字选择器作为警报对话框?,flutter,dialog,numberpicker,product-quantity,flutter-alertdialog,Flutter,Dialog,Numberpicker,Product Quantity,Flutter Alertdialog,我正在开发电子商务应用程序,当用户点击数量标签时,会显示一个对话框,用于选择他要购买的数量。 我试图在警报对话框中包装数字选择器。它显示警报对话框,但问题是滚动时不更新值 我可以使用数字选择器吗?使用下拉按钮组合小部件。DropdownButtonFormField保存列表StatusMenuItems中的类视图类型对象的集合。_currentStatusComboView变量保存选定的值。它是在onChange事件上分配的。我使用restful调用加载listStatusMenuItems

我正在开发电子商务应用程序,当用户点击数量标签时,会显示一个对话框,用于选择他要购买的数量。

我试图在警报对话框中包装数字选择器。它显示警报对话框,但问题是滚动时不更新值


我可以使用数字选择器吗?

使用下拉按钮组合小部件。DropdownButtonFormField保存列表StatusMenuItems中的类视图类型对象的集合。_currentStatusComboView变量保存选定的值。它是在onChange事件上分配的。我使用restful调用加载listStatusMenuItems

 List<DropdownMenuItem> listStatusMenuItems = <DropdownMenuItem>[];

 StatusComboView _currentStatusComboView;

 _loadStatusCombo() {
      Provider.of<Api>(context, listen: false)
        .getYourClassViews()
       .then((listView) {
     setState(() {
        listStatusMenuItems =
            listView?.map<DropdownMenuItem<YourClassView>>((item) {
      return DropdownMenuItem<StatusComboView>(
          value: item, child: Text(item.displayValue));
    }).toList();
  });
});

 @override
 void initState() {
    super.initState();
    _loadStatusCombo();
 }

  DropdownButtonFormField<YourClassView>(
                              decoration: InputDecoration(
                                  border: OutlineInputBorder(
                                    borderRadius: const BorderRadius.all(
                                      const Radius.circular(5.0),
                                    ),
                                  ),
                                  filled: true,
                                  hintStyle:
                                      TextStyle(color: Colors.grey[800]),
                                  hintText: "Select a Value",
                                  fillColor: Colors.orange),
                              items: listStatusMenuItems,
                              isDense: true,
                              isExpanded: true,
                              value: this._currentStatusComboView,
                              validator: (value) =>
                                  value == null ? 'field required' : null,
                              onChanged: (StatusComboView value) {
                                setState(() {
                                  this._currentStatusComboView = value;
                                });
                              }),
List listStatusMenuItems=[];
StatusComboView\u currentStatusComboView;
_loadStatusCombo(){
Provider.of(上下文,侦听:false)
.getYourClassViews()
.然后((列表视图){
设置状态(){
列表状态菜单项=
listView?.map((项目){
返回下拉菜单项(
值:项,子项:文本(item.displayValue));
}).toList();
});
});
@凌驾
void initState(){
super.initState();
_loadStatusCombo();
}
下拉按钮窗体字段(
装饰:输入装饰(
边框:大纲输入边框(
borderRadius:const borderRadius.all(
圆形常数半径(5.0),
),
),
是的,
辛茨风格:
TextStyle(颜色:Colors.grey[800]),
hintText:“选择一个值”,
填充颜色:颜色。橙色),
项目:listStatusMenuItems,
是的,
是的,
值:此。\u currentStatusComboView,
验证程序:(值)=>
值==null?“需要字段”:null,
一旦更改:(StatusComboView值){
设置状态(){
这。_currentStatusComboView=值;
});
}),