如何滚动嵌套在Flutter中的Listview

时间:2019-10-17 02:41:19

标签: listview flutter dart scrollable

当我使用两个嵌套的Listviews和ListView.builder时,它仍会滚动,但是具有shirnkSwap属性的子Listview.builder无法再滚动,但是我不想在小部件容器中使用height属性,因为它是非常难看。

Flutter 1.9.4 SDK

//我的主屏幕

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      backgroundColor: Color(0xFFEEF0F2),
      appBar: AppBar(
        backgroundColor: Color(0xFF396DF0),
        elevation: 0,
        leading: LeadinguttonIcon(),
        title: Text('TheGoal'),
        actions: <Widget>[ActionIconButton()],
      ),
      body:
          ListView(children: <Widget>[TopHomeScreenBody(), BottomHomeScreen()]),
    );
  }
}```

**//  TopHomeScreenBody**

```class TopHomeScreenBody extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return ClipPath(
      clipper: BodyClipper(),
      child: Container(
        color: Color(0xFF396DF0),
        padding: EdgeInsets.only(top: 10, right: 22, left: 22, bottom: 30),
        height: 250,
        width: double.infinity,
        child: Container(
          decoration: BoxDecoration(
              color: Colors.white,
              borderRadius: BorderRadius.all(Radius.circular(15))),
          child: Column(
            crossAxisAlignment: CrossAxisAlignment.center,
            mainAxisAlignment: MainAxisAlignment.spaceEvenly,
            children: <Widget>[MainText(), SubText()],
          ),
        ),
      ),
    );
  }
}```

**// BottomHomeScreen** 


```class BottomHomeScreen extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Container(
//  IT CAN SCROLL WHEN ADD HEIGHT BUT I
//  DONT WANT USE HEIGHT HERE BECAUSE VERY UGLY APP
//    height: 400,
      padding: EdgeInsets.all(25),
      decoration: BoxDecoration(
        color: Color(0xFFEEF0F2),
      ),
      child: ListView.builder(
        shrinkWrap: true,
        itemBuilder: (context, index) {
          return BottomGoalTitle(
            text: '${goalList[index].text}',
            decsText: '${goalList[index].decsText}',
            color: goalList[index].color,
            icon: goalList[index].icon,
          );
        },
        itemCount: goalList.length,
      ),
    );
  }
}

感谢您的阅读。希望您的帮助!

1 个答案:

答案 0 :(得分:0)

如果您不想让listview.builder滚动,请尝试添加此physics: NeverScrollableScrollPhysics(),