【发布时间】:2020-03-10 17:27:20
【问题描述】:
项目
嗨,我正试图用我的自定义控制器和监听器构建一个简单的列表。 这是代码
class Test2 extends StatefulWidget {
@override
_Test2State createState() => _Test2State();
}
class _Test2State extends State<Test2> {
ScrollController scrollController = ScrollController();
@override
void initState() {
scrollController.addListener((){
print('controller called');
});
super.initState();
}
@override
Widget build(BuildContext context) {
return Scaffold(
body: ListView.builder(
controller: scrollController,
itemCount: 8,
itemBuilder: (context, index) {
return Padding(
padding: const EdgeInsets.all(8.0),
child: Container(
color: Colors.white,
height: 50,
),
);
},
));
}
}
问题
我的代码按预期工作,但我试图检测用户的滑动,即使没有任何东西可以滑动。到目前为止,如果在调用用户滑动滚动侦听器时列表溢出屏幕,但是当项目列表短于屏幕大小时,则不会发生这种情况。 我怎样才能强迫听众总是听?
【问题讨论】:
-
尝试改用
NotificationListener? -
即使列表太短而无法滚动,是否也会检测到滑动?
标签: flutter