所以,我正在做一个颤振挑战,我已经完成了 50% 的动画,但是当我在draggableScrollableSheet 上创建自定义滚动动画时,如果用户向上滑动工作表,项目会通过夹紧和弹跳物理做出反应,但我无法使用draggablesheet找出该解决方案,因为它缺少物理参数。
您可以查看滚动动画的视频以获得更好的想法这里:
任何帮助将不胜感激!
有关如何处理此滚动动画的建议。
您的链接无效。 这是一个简化的示例。
class CustomScrollableSheet extends StatefulWidget {
@override
_CustomScrollableSheetState createState() => _CustomScrollableSheetState();
}
class _CustomScrollableSheetState extends State<CustomScrollableSheet> {
ScrollController _scrollController = ScrollController();
double _scrollOffset = 0;
@override
Widget build(BuildContext context) {
return NotificationListener<ScrollUpdateNotification>(
onNotification: (notification) {
setState(() {
_scrollOffset = _scrollController.offset;
});
return true;
},
child: DraggableScrollableSheet(
initialChildSize: 0.5,
minChildSize: 0.2,
builder: (context, controller) {
_scrollController = controller;
return ListView.builder(
controller: controller,
itemCount: 50,
itemBuilder: (context, index) => ListTile(
title: Text('Item $index'),
),
);
},
),
);
}
}
您可以尝试不同的
ClampingScrollPhysics
、BouncingScrollPhysics
值和阻尼系数以获得所需的效果