calendar_date_picker2: ^0.5.3使用这个库我想隐藏一个点下面的日期文本
xmd2e60i1#
我希望你使用的是calendar_date_picker2:^0.5.3包。如果是,请在下面的代码中找到CalendarDatePicker 2 WithButtonsConfig函数。
_buildCalendarDialogButton() { const dayTextStyle = TextStyle(color: Colors.black, fontWeight: FontWeight.w700); final weekendTextStyle = TextStyle(color: Colors.grey[500], fontWeight: FontWeight.w600); final anniversaryTextStyle = TextStyle( color: Colors.red[400], fontWeight: FontWeight.w700, decoration: TextDecoration.underline, ); final config = CalendarDatePicker2WithActionButtonsConfig( dayTextStyle: dayTextStyle, calendarType: CalendarDatePicker2Type.range, selectedDayHighlightColor: Colors.purple[800], closeDialogOnCancelTapped: true, firstDayOfWeek: 1, weekdayLabelTextStyle: const TextStyle( color: Colors.black87, fontWeight: FontWeight.bold, ), controlsTextStyle: const TextStyle( color: Colors.black, fontSize: 15, fontWeight: FontWeight.bold, ), centerAlignModePicker: true, customModePickerIcon: const SizedBox(), selectedDayTextStyle: dayTextStyle.copyWith(color: Colors.white), dayTextStylePredicate: ({required date}) { TextStyle? textStyle; if (date.weekday == DateTime.saturday || date.weekday == DateTime.sunday) { textStyle = weekendTextStyle; } if (DateUtils.isSameDay(date, DateTime(2021, 1, 25))) { textStyle = anniversaryTextStyle; } return textStyle; }, dayBuilder: ({ required date, textStyle, decoration, isSelected, isDisabled, isToday, }) { Widget? dayWidget; if (date.day % 3 == 0 && date.day % 9 != 0) { dayWidget = Container( decoration: decoration, child: Center( child: Stack( alignment: AlignmentDirectional.center, children: [ Text( MaterialLocalizations.of(context).formatDecimal(date.day), style: textStyle, ), /*Padding( padding: const EdgeInsets.only(top: 27.5), child: Container( height: 4, width: 4, decoration: BoxDecoration( borderRadius: BorderRadius.circular(5), color: isSelected == true ? Colors.red : Colors.grey[500], ), ), ),*/ ], ), ), ); } return dayWidget; }, yearBuilder: ({ required year, decoration, isCurrentYear, isDisabled, isSelected, textStyle, }) { return Center( child: Container( decoration: decoration, height: 36, width: 72, child: Center( child: Semantics( selected: isSelected, button: true, child: Row( mainAxisAlignment: MainAxisAlignment.center, children: [ Text( year.toString(), style: textStyle, ), if (isCurrentYear == true) Container( padding: const EdgeInsets.all(5), margin: const EdgeInsets.only(left: 5), decoration: const BoxDecoration( shape: BoxShape.circle, color: Colors.redAccent, ), ), ], ), ), ), ), ); }, ); return Padding( padding: const EdgeInsets.all(15), child: Row( mainAxisAlignment: MainAxisAlignment.center, children: [ ElevatedButton( onPressed: () async { final values = await showCalendarDatePicker2Dialog( context: context, config: config, dialogSize: const Size(325, 400), borderRadius: BorderRadius.circular(15), value: _dialogCalendarPickerValue, dialogBackgroundColor: Colors.white, ); if (values != null) { // ignore: avoid_print print(_getValueText( config.calendarType, values, )); setState(() { _dialogCalendarPickerValue = values; }); } }, child: const Text('Open Calendar Dialog'), ), ], ), ); }
现在,你所需要做的就是删除/注解下面的代码,这将消除日期文本下面的圆点。
Padding( padding: const EdgeInsets.only(top: 27.5), child: Container( height: 4, width: 4, decoration: BoxDecoration( borderRadius: BorderRadius.circular(5), color: isSelected == true ? Colors.red : Colors.grey[500], ), ), ),
请核实,我相信这应该解决你的问题。
kpbwa7wx2#
您可能正在使用来自here的代码示例。他们添加了dayBuilder来展示如何在特定日期自定义小部件。要解决这个问题,请从配置中删除dayBuilder。
dayBuilder
CalendarDatePicker2WithActionButtonsConfig( ... dayBuilder: ..., // remove this )
2条答案
按热度按时间xmd2e60i1#
我希望你使用的是calendar_date_picker2:^0.5.3包。如果是,请在下面的代码中找到CalendarDatePicker 2 WithButtonsConfig函数。
现在,你所需要做的就是删除/注解下面的代码,这将消除日期文本下面的圆点。
请核实,我相信这应该解决你的问题。
kpbwa7wx2#
您可能正在使用来自here的代码示例。他们添加了
dayBuilder
来展示如何在特定日期自定义小部件。要解决这个问题,请从配置中删除dayBuilder
。