我有一个需要垂直和水平滚动的表格。我设法通过将表格包装在 2 个滚动视图中来做到这一点。我的问题是,如果用户试图通过在文本字段上滑动来水平滚动,则水平滚动不起作用。
然而,我可以在标题上或文本字段外滑动时水平滚动。
有没有办法禁用文本视图上的手势。我尝试在文本字段上设置 scrollPhysics: NeverScrollableScrollPhysics() 无济于事。
在文本字段上滑动时垂直滚动效果很好。
class TableExample extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Table Example',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: Scaffold(
appBar: AppBar(),
body: Card(
child: Padding(
padding: const EdgeInsets.all(8.0),
child: SingleChildScrollView(
scrollDirection: Axis.horizontal,
child: Table(
defaultColumnWidth: const FixedColumnWidth(75),
border: TableBorder.all(color: Colors.grey),
children: <TableRow>[
TableRow(children: [
Text('1'),
Text('2'),
Text('3'),
Text('4'),
Text('5'),
Text('6'),
Text('7'),
Text('8'),
Text('9'),
Text('10'),
]),
TableRow(
children: <Widget>[
TextField(
scrollPhysics: NeverScrollableScrollPhysics(),
),
TextField(),
TextField(),
TextField(),
TextField(),
TextField(),
TextField(),
TextField(),
TextField(),
TextField(),
],
),
TableRow(
children: <Widget>[
TextField(),
TextField(),
TextField(),
TextField(),
TextField(),
TextField(),
TextField(),
TextField(),
TextField(),
TextField(),
],
),
],
),
),
),
),
),
);
}
}