日期的水平ScrollView

时间:2019-12-30 13:12:07

标签: flutter

我想在水平ScrollView中拥有一个月的所有日期。我正在显示7个当前星期日期,并在滚动条上应显示其他星期日期。这是我的代码。 Scroll在此代码中不起作用。我也尝试添加单子滚动视图,但无法正常工作。

                        //////Days Displayed here///////
                        new Padding(
                          padding: new EdgeInsets.only(
                            top: 10.0, bottom: 5.0
                          ),
                          child: new Container(
                            width: 35.0,
                            height: 35.0,
                            alignment: Alignment.center,
                            decoration: new BoxDecoration(
                              shape: BoxShape.circle,
                              color: today
                                ? const Color.fromRGBO(204, 204, 204, 0.3)
                                : Colors.transparent
                            ),
                            child: new Column(
                              mainAxisAlignment: MainAxisAlignment.center,
                              children: <Widget>[
                                GestureDetector(
                                  onTap: () {
                                    print('OnTapped');
                                  },
                                  child: new Text(
                                    arrayDay[i].toString(),
                                    style: new TextStyle(
                                      fontSize: 12.0,
                                      fontWeight: FontWeight.w400
                                    ),
                                  ),
                                ),
                              ],
                            )
                          ),
                        )

arrayDay包含所有日期。请帮忙。该怎么做?

1 个答案:

答案 0 :(得分:0)

我建议使用PageView,这就是它的用途,它提供了快速的巫婆功能,使这一切变得更加容易。这是一个代码示例:

  Widget _daysOfWeek(int week) {
    return Row(
      children: <Widget>[
        Text("display here days of week " + week.toString()),
      ],
    );
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Container(
        width: 200,
        height: 200,
        child: PageView(
          children: <Widget>[
            _daysOfWeek(1),
            _daysOfWeek(2),
            _daysOfWeek(3),
            _daysOfWeek(4),
          ],
        ),
      ),
    );
  }

在功能_daysOfWeek中,您可以根据我们所在的页面显示日期。

在此处查看工作示例:https://dartpad.dartlang.org/ab7cfaa813ad2c84e3c6d8d93b7b87d7