es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo actualizar TableCalendar en el paquete table_calendar?

Estoy utilizando table_calendar en un proyecto de Flutter. Lo actualicé de “^2.3.3” a “^3.0.3”.

Así es como se usaba la clase anteriormente

TableCalendar(
      calendarController: _calendarController,
      events: _events,
      initialCalendarFormat: CalendarFormat.month,
      formatAnimation: FormatAnimation.slide,
      startingDayOfWeek: StartingDayOfWeek.monday,
      availableGestures: AvailableGestures.horizontalSwipe,
      availableCalendarFormats: const {CalendarFormat.month: ''},
      calendarStyle: CalendarStyle(outsideDaysVisible: false),
      headerVisible: true,
      onVisibleDaysChanged: (first, last, format) {
        _statisticsBloc.add(
          StatisticsEvents.getPillsInCalendar(
              first.millisecondsSinceEpoch ~/ 1000,
              last.millisecondsSinceEpoch ~/ 1000),
        );
      },
      headerStyle: _buildHeaderStyle(context),
      daysOfWeekStyle: _daysOfWeekStyle(),
      rowHeight: 50.h,
      builders: CalendarBuilders(
        dowWeekdayBuilder: _dowWeekdayBuilder,
        dayBuilder: _dayBuilder,
        markersBuilder: (_, date, events, holidays) {
          return isLoading
              ? [
                  Positioned(
                    bottom: 2,
                    child: _progressBar(),
                  ),
                ]
              : _markersBuilder(_, date, events, holidays);
        },
      ),
      onDaySelected: (date, events, holidays) => _onDaySelected(date, events, holidays),
    );

Pero en la actualización, la mayoría de estas propiedades se eliminaron, por lo tanto, casi todas las propiedades están arrojando errores (calendarController, events, initialCalendarFormat, formatAnimation, onVisibleDaysChanged, builders, dowWeekdayBuilder, dayBuilder, markersBuilder, onDaySelected) con la versión actualizada y no logro encontrar por qué reemplazarlas. Cualquier ayuda sería genial, ¡gracias!

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Al actualizar de ^2.3.3 a ^3.0.3, se han eliminado algunas propiedades de TableCalendar. Aquí están las propiedades y sus reemplazos:

    • calendarController ha sido reemplazado por calendarBuilders: CalendarBuilders(calendarControllerBuilder: (context, _) => _calendarController,)
    • initialCalendarFormat ha sido reemplazado por calendarFormat: CalendarFormat.month

    • formatAnimation se ha eliminado y ya no es necesario

    • startingDayOfWeek se ha eliminado y ya no es necesario

    • availableGestures se ha eliminado y ya no es necesario

    • availableCalendarFormats ha sido reemplazado por availableCalendarFormats: const {CalendarFormat.month: '',}

    • calendarStyle ha sido reemplazado por calendarStyle: const CalendarStyle(outsideDaysVisible: false),

    • headerVisible se ha eliminado y ya no es necesario

    • onVisibleDaysChanged ha sido reemplazado por onCalendarChanged: (date, format) { _statisticsBloc.add(StatisticsEvents.getPillsInCalendar(date.millisecondsSinceEpoch ~/ 1000, date.add(Duration(days: 6)).millisecondsSinceEpoch ~/ 1000),); }

    • headerStyle ha sido reemplazado por headerStyle: _buildHeaderStyle(context),

    • daysOfWeekStyle ha sido reemplazado por daysOfWeekStyle: _daysOfWeekStyle(),

    • rowHeight se ha eliminado y ya no es necesario

    • builders ha sido reemplazado por calendarBuilders: CalendarBuilders(dayBuilder: _dayBuilder, dowWeekdayBuilder: _dowWeekdayBuilder, markersBuilder: (_, date, events, holidays) { return isLoading ? [ Positioned( bottom: 1, child: _progressBar(), ), ] : _markersBuilder(_, date, events, holidays);},),

    • onDaySelected ha sido reemplazado por onDaySelected: (date, events, holidays) { _onDaySelected(date, events, holidays); },

    Utilice los reemplazos anteriores para corregir los errores encontrados después de la actualización a ^3.0.3.

Comments are closed.