#api #flutter #dart #calendar #carousel
#API #трепетание #дротик #Календарь #карусель
Вопрос:
Я хочу показать календарь карусели и отметить присутствие, отсутствие и отпуск учащегося с помощью Rest Api. Мне нужно показать эти события другим цветом. Событие уже существует из API.
Комментарии:
1. Пожалуйста, будьте более конкретны. Вам нужно добавить некоторый код, чтобы описать, что вы сделали до сих пор и с чем вы застряли? Вы застряли с созданием календаря карусели или отображением событий в календаре или и тем, и другим? Вы пробовали использовать доступные пакеты календаря? Я знаю несколько, которые могут легко помочь вам в создании того же самого.
2. @RaviSinghLodhi Я уже сделал календарь carousel. Тогда теперь мне нужно показать отсутствующие, присутствующие и оставленные даты в календаре с помощью конкретного ответа rest api. я просто хочу показать конкретные даты, связанные с этими событиями, в календаре. Вот и все
3. Какую библиотеку вы использовали для карусели календаря?
4. @RaviSinghLodhi flutter_calendar_carousel: ^1.4.12
5. Вы можете использовать это
customDayBuilder
свойство. Какие данные вы получаете от API?
Ответ №1:
Вы должны преобразовать свои данные временных меток из API в DateTime
объект.
DateTime dateTime = DateTime.parse(timestamp);
А затем используйте это customDayBuilder
свойство, чтобы определить соответствующий виджет с нужным вам цветом.
customDayBuilder: ( /// you can provide your own build function to make custom day containers
bool isSelectable,
int index,
bool isSelectedDay,
bool isToday,
bool isPrevMonthDay,
TextStyle textStyle,
bool isNextMonthDay,
bool isThisMonthDay,
DateTime day,
) {
/// If you return null, [CalendarCarousel] will build container for current [day] with default function.
/// This way you can build custom containers for specific days only, leaving rest as default.
if (day.difference(dateTime).inDays == 0) {
// Do additional checks for status, remarks or for checking
// whether the day should be marked as absent, present or something else
return Container(
decoration: BoxDecoration(
color: Colors.red // Change this color according to your case.
shape: BoxShape.circle,
);
} else {
return null; // returning null will build container for current [day] with default function.
}
},