如何创建水平 ListView.builder

时间:2021-01-04 03:05:55

标签: firebase flutter listview flutter-layout flutter-pageview

嘿,我想制作水平 ListView.builder,但它显示“BoxConstraints 力和无限宽度”的错误。其实我想做一个像Fiverr这样的“买家请求”页面。 我使用 PageView.builder 实现了我的目标,但是当我使用

firebase.auth().onAuthStateChanged(user => {
  if (user) {
    const result = await firebase.auth().getRedirectResult();
    assert(result.user, 'user is empty')
  }
});

每当我滑动到下一个索引时,它都会让我回到第一个索引。

所以我想改用 ListView.builder。这是我的代码:(希望有人能解决我的问题)

if(snapshot.connectionState == ConnectionState.waiting)
return SpinKitDoubleBounce(color: kPrimaryColor);

如果有人想查看完整文件。 Check it Here

2 个答案:

答案 0 :(得分:0)

首先将您的 ListView.builder 包装到 LimitedBox / 容器中,然后在其上设置高度。然后添加

scrollDirection: Axis.horizontal,

完成

答案 1 :(得分:0)

改用 pageview.builder :

Container(
  height: MediaQuery.of(context).size.height / 3,
  width: MediaQuery.of(context).size.width,
    child: PageView.builder(
          pageSnapping: false,
          physics: PageScrollPhysics(),
          controller: _pageController,
           scrollDirection: Axis.horizontal,
           itemCount:
                 _articleController.articleListDat.length,
            itemBuilder: (context, index) {
               return Container();
}

和页面控制器

PageController _pageController = PageController(initialPage: 2, viewportFraction: 0.9);