我试图在这里实现一个不可滚动的ListView构建器,但似乎找不到解决方法。原因是因为我希望所有内容都是可滚动的,并且我不想在可滚动的父级中拥有可滚动的小部件。
class _DashboardState extends State<Dashboard> { @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar(title: Text('App Bar Here')), body: SingleChildScrollView( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: <Widget>[ Text('Hello World'), Container( child: ListView.builder( itemBuilder: (context, index) { return Card( child: Padding( padding: const EdgeInsets.all(16.0), child: Column( children: <Widget>[ Container( color: Color(0xffaaaaaa), height: 20, child: Text('Jss One')), Text( 'English', style: TextStyle(fontSize: 20), ), ], ), ), ); }, itemCount: 50, ), ),],),)); }}
最佳答案
class _DashboardState extends State<Dashboard> { @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar(title: Text('App Bar Here')), body: SingleChildScrollView( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: <Widget>[ Text('Hello World'), Container( child: ListView.builder( physics: NeverScrollablePhysics() //add this line, itemBuilder: (context, index) { return Card( child: Padding( padding: const EdgeInsets.all(16.0), child: Column( children: <Widget>[ Container( color: Color(0xffaaaaaa), height: 20, child: Text('Jss One')), Text( 'English', style: TextStyle(fontSize: 20), ), ], ), ), ); }, itemCount: 50, ), ),],),)); }}
将物理属性设置为NeverScrollablePhysics()以便不滚动lisview