怎么计算每个item的高度,想滚动到具体某一个某一条,有什么思路
来源:10-2 基于ListView实现水平和垂直方式滚动的列表【边学边做】
老白一个
2020-04-01
这方面资料很少,处理这样的问题,有什么思路吗,目前看到的一种方式是在listview 中 写死子item的高度,还有写的解决方法吗
写回答
1回答
-
CrazyCodeBoy
2020-04-05
借助:Scrollable.ensureVisible(context) + SingleChilScrollView + GlobalKey来实现:
class ScrollView extends StatelessWidget { final dataKey = new GlobalKey(); @override Widget build(BuildContext context) { return new Scaffold( primary: true, appBar: new AppBar( title: const Text('Home'), ), body: new SingleChildScrollView( child: new Column( children: <Widget>[ new SizedBox(height: 160.0, width: double.infinity, child: new Card()), new SizedBox(height: 160.0, width: double.infinity, child: new Card()), new SizedBox(height: 160.0, width: double.infinity, child: new Card()), // destination new Card( key: dataKey, child: new Text("data\n\n\n\n\n\ndata"), ) ], ), ), bottomNavigationBar: new RaisedButton( onPressed: () => Scrollable.ensureVisible(dataKey.currentContext), child: new Text("Scroll to data"), ), ); } }
00
相似问题
一个受屏幕影响的布局问题
回答 1
老师,想问您一个滑动冲突的问题
回答 1