1

我是 Flutter 的新手,并且在我的应用程序中实现一个我已经单独测试过的日期选择器小部件时遇到了麻烦。它只是抛出一个错误 NoSuchMethodError-> 在 null 上调用了方法 'datePickerHour'。接收方:null 尝试调用:datePickerHour(0)

我已经包含了正确的 cupertino 包,并且我已经完全按照我之前的测试代码完成了实现。我只是不明白为什么 CupertinoDatePicker 中的这个方法 (datePickerHour()) 没有被识别。有人可以帮我发现错误吗?先感谢您。

代码是:

                                  FlatButton(
                                      onPressed: () {                                             
                                          showModalBottomSheet(
                                              context: context,
                                              builder:
                                                  (BuildContext builder) {
                                                return Container(
                                                  height:
                                                      MediaQuery.of(context)
                                                              .copyWith()
                                                              .size
                                                              .height /
                                                          3,
                                                  color: Colors.white,
                                                  child:
                                                      CupertinoDatePicker(
                                                    mode:
                                                        CupertinoDatePickerMode
                                                            .dateAndTime,
                                                    onDateTimeChanged:
                                                        (picked) {
                                                      if (picked != null &&
                                                          picked !=
                                                              selectedDate)
                                                        setState(() {
                                                          selectedDate =
                                                              picked;
                                                        });
                                                    },
                                         
                                                    initialDateTime: selectedDate,
                                                    minimumYear: 2020,
                                                    maximumYear: 2025,
                                                  ),
                                                );
                                              });
                                        }
                                      },
                                      padding: EdgeInsets.symmetric(
                                          vertical: 14),
                                      color: Theme.of(context).accentColor,
                                      shape: StadiumBorder(),
                                      child: Icon(
                                        Icons.calendar_today,
                                        color:
                                            Theme.of(context).primaryColor,
                                      )),
                                  
4

1 回答 1

2

添加了这一行

MaterialApp(
  localizationsDelegates: [
    GlobalMaterialLocalizations.delegate,
    GlobalWidgetsLocalizations.delegate
  ],
  supportedLocales: [
    const Locale('ru', "RU"),
    const Locale('en', "US"),
  ],
于 2021-03-30T19:36:46.877 回答