颤振:找不到方法:ButtonTheme.bar

时间:2021-03-28 16:35:00

标签: flutter dart flutter-layout flutter-dependencies flutter-packages

过去 4-5 个月我一直在研究这个项目,在 Flutter 2.0 更新之后,它开始在 flutter_form_builderintl 之间产生插件版本冲突。

flutter_form_builder 降级到 3.14.1 后,我遇到了与 date_range_picker 相关的错误,

../../.pub-cache/hosted/pub.dartlang.org/date_range_picker-1.0.6/lib/date_range_picker.dart:1152:44: Error: Method not found: 'ButtonTheme.bar'.
    final Widget actions = new ButtonTheme.bar( 

使用此代码通过 overriding dependency 修复后

date_range_picker:
    git:
      url: https://github.com/LempereurBenjamin/date_range_picker

我遇到了这个错误

../../.pub-cache/hosted/pub.dartlang.org/country_pickers-1.3.0/lib/utils/my_alert_dialog.dart:139:36: Error: Method not found: 'ButtonTheme.bar'.
      children.add(new ButtonTheme.bar(                                 
                                   ^^^     

注意:我没有使用任何这些插件,即 date_range_pickercountry_pickers

2 个答案:

答案 0 :(得分:1)

在解决这个奇怪的错误之后,我找到了一个解决方案。

country_pickers

引起的错误

我没有在我的项目中使用 country_pickers,导致这个错误的原因是我使用的一个软件包使用了 country_pickers 版本 1.3.0,这引发了这个异常,

../../.pub-cache/hosted/pub.dartlang.org/country_pickers-1.3.0/lib/utils/my_alert_dialog.dart:139:36: Error: Method not found: 'ButtonTheme.bar'.
      children.add(new ButtonTheme.bar(                                 
                                   ^^^ 

我需要做的就是将我的项目对 country_pickers 的依赖覆盖到版本 2.0.0

dependency_overrides:
  country_pickers: ^2.0.0

date_range_picker

引起的错误

如果您遇到以下错误,

../../.pub-cache/hosted/pub.dartlang.org/date_range_picker-1.0.6/lib/date_range_picker.dart:1152:44: Error: Method not found: 'ButtonTheme.bar'.
    final Widget actions = new ButtonTheme.bar( 

覆盖 date_range_picker 依赖项,

date_range_picker:
    git:
      url: https://github.com/LempereurBenjamin/date_range_picker

P.S:即使您没有使用这些软件包中的任何一个,您也可能会收到这些错误,因为您正在使用的某些软件包可能依赖于其中任何一个。

答案 1 :(得分:0)

我认为 ButtonTheme.bar 在 Flutter 2.0 中已弃用,而是使用 ButtonBarTheme。试试这个可能会奏效。

Improvement- 请参阅这是一项改进。