Function 初始化我的类中的另一个类时需要1个参数

Function 初始化我的类中的另一个类时需要1个参数,function,class,flutter,initialization,Function,Class,Flutter,Initialization,我想从另一个类访问函数。解决方案是初始化我想要访问的类中的第二个类。像这样: class Calendarsub extends State<Calendar> with SingleTickerProviderStateMixin{ final TableCalendar tableCalendar; Calendarsub(this.tableCalendar); class Calendarsub使用SingleTickerProviderStateMixin扩展状

我想从另一个类访问函数。解决方案是初始化我想要访问的类中的第二个类。像这样:

 class Calendarsub extends State<Calendar> with SingleTickerProviderStateMixin{

 final TableCalendar tableCalendar;

 Calendarsub(this.tableCalendar);
class Calendarsub使用SingleTickerProviderStateMixin扩展状态{
最终表格日历;
Calendarsub(此.tableCalendar);
当我这样做时,我可以访问函数,但应用程序没有运行,因为有状态小部件显示:“预期1个必需参数,但找到0。”

类日历扩展StatefulWidget{
@凌驾
状态createState(){
return Calendarsub();//此括号中必须是参数
//但我不知道是哪一个
}
}

构造函数需要一个参数-
TableCalendar

因此,必须使用以下值对其进行初始化:

TableCalendar tableCalendar = TableCalendar(); //or somethimg like that
Calendarsub calendar = Calendarsub(tableCalendar);
或者将此参数设置为可选:

class Calendarsub extends State<Calendar> with SingleTickerProviderStateMixin{

 TableCalendar tableCalendar;

 Calendarsub({this.tableCalendar});

听起来好像有两个类使用相同的名称

  • Calendar,StatefulWidget的子类,它接受一个参数
  • 日历,一种状态,不接受任何参数

这会混淆编译器。您需要重命名,以便不再存在名称冲突。

谢谢您的更正。我编辑了代码,忘记添加子项。@thecode
createState
应该在方法
createState()中返回
Calendarsub
而不是
Calendar
现在必须返回
Calendarsub
并且它需要一个参数-
TableCalendar
class Calendarsub extends State<Calendar> with SingleTickerProviderStateMixin{

 TableCalendar tableCalendar;

 Calendarsub({this.tableCalendar});
Calendarsub calendar = Calendarsub(tableCalendar: TableCalendar());