Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/9.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_Dart - Fatal编程技术网

Flutter 如何在颤振中扩展两个类?

Flutter 如何在颤振中扩展两个类?,flutter,dart,Flutter,Dart,我正在尝试扩展两个类,它们在flatter中使用with关键字来获得SearchDelegate覆盖方法,但无法这样做。请提出解决方案 class A extends StatefulWidget with SearchDelegate{} 通常,您可以使用'with'关键字在dart中轻松调用多个类(继承),如 Class A extends B with C, D { //your code } 但当你打电话给SearchDelegate时,你可能会看到 类“SearchDele

我正在尝试扩展两个类,它们在flatter中使用with关键字来获得SearchDelegate覆盖方法,但无法这样做。请提出解决方案

class A extends StatefulWidget with SearchDelegate{}

通常,您可以使用'with'关键字在dart中轻松调用多个类(继承),如

Class A extends B with C, D {
    //your code
}
但当你打电话给SearchDelegate时,你可能会看到

类“SearchDelegate”不能用作mixin,因为它声明了构造函数。

类“SearchDelegate”不能用作mixin,因为它扩展了对象以外的类。

简短解释:这里您必须重写所有它的抽象方法,还需要在声明的类中传递String/int变量。这意味着你可能已经用所需的变量调用了DataSearch类构造函数

由于使用param调用构造函数,因此最好调用一个新类,以便轻松实现SearchDelegate

喜欢任何按钮动作吗

onPressed: () {
        showSearch(
          context: context,
          delegate: CustomSearchDelegate(),
        );
      },
希望我的回答能让你明白。谢谢