微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我怎样才能在日历上推送当天更改页面? - 颤抖

如何解决我怎样才能在日历上推送当天更改页面? - 颤抖

我正在制作一个日历应用程序,我希望能够根据日期在 horizontal scrollview 中推送日历日期的页面变化。我该怎么做?我正在使用 table_calendar 小部件。

我使用的包是:

import 'package:Flutter/material.dart';
import 'package:intl/date_symbol_data_local.dart';
import 'package:intl/intl.dart';
import 'package:mrplan/widgets/back_button.dart';
import 'package:mrplan/widgets/task_container.dart';
import 'package:table_calendar/table_calendar.dart';
import 'dart:io';

我尝试过这种编码,但不起作用:

class CalendarPage1 extends StatefulWidget {
  @override
  _CalendarPage1State createState() => _CalendarPage1State();
}
PageController pageController = PageController(initialPage: _currentIndex,);
class _CalendarPage1State extends State<CalendarPage1> {

   Widget build(BuildContext context) {
     
      return Center(
        child: Container(
          child: SingleChildScrollView(
            child: Column(
              crossAxisAlignment: CrossAxisAlignment.start,children: <Widget>[
                Card(
                  clipBehavior: Clip.antiAlias,margin: const EdgeInsets.all(8.0),child: TableCalendar(
                  calendarController: calendarcontrollera,availableCalendarFormats: const{
                    CalendarFormat.month: 'mes',CalendarFormat.week: 'semana',CalendarFormat.twoWeeks: 'dos semanas'
                  },initialCalendarFormat: CalendarFormat.week,calendarStyle: CalendarStyle(
                    todayColor: Colors.blue[800],selectedColor: Colors.grey,todayStyle: TextStyle(
                      fontWeight: FontWeight.bold,fontSize: 18.0
                      )
                      ),headerStyle: HeaderStyle(
                        formatButtonVisible: false,formatButtonPadding: EdgeInsets.symmetric(horizontal: 0.0),formatButtonTextStyle: TextStyle(
                          locale: Locale('fr','CH')
                          ),centerHeaderTitle: true,formatButtondecoration: Boxdecoration(
                        borderRadius: BorderRadius.circular(20.0)
                        )
                      ),startingDayOfWeek: StartingDayOfWeek.monday,onDaySelected: (date,events,eventos){
                      pageController.animatetoPage(_currentIndex,duration: (Duration(milliseconds: 500)),curve: Curves.ease);
                    },builders: CalendarBuilders(
                      selectedDayBuilder: (context,date,events) => 
                      Container(
                        margin: const EdgeInsets.all(4.0),alignment: Alignment.center,decoration: Boxdecoration(
                          color: Theme.of(context).primaryColor,shape: BoxShape.circle,),child: Text
                        (date.day.toString(),style: TextStyle(
                          color: Colors.white
                        )),todayDayBuilder: (context,events)=>
                      Container(
                        margin: const EdgeInsets.all(4.0),decoration: Boxdecoration(
                          color: Colors.grey,]
              )
              )
              
              )
              );
            
          
        
      
    }
    
  }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。