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

How To Create Number Picker as a alert dialog in flutter?

我正在开发电子商务应用程序,当用户点击数量标签时想要显示 select 他想购买多少数量的对话框。

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

我可以为此使用号码选择器吗?

使用下拉按钮组合小部件。 DropdownButtonFormField 包含列表 listStatusMenuItems 中保存的 YourClassView 类型对象的集合。 _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;
                                });
                              }),