Например, у меня есть виджет, который вращается по пользовательскому свайпу с использованием переменной dragoffset += details.offset.dx
;
Как можно добавить инерцию к вращению, когда свайп закончился? Например, когда вы отпускаете палец, и объект продолжает вращаться с нисходящей скоростью - так же, как обычно ведет себя ListView.
Вот пример кода:
Widget rotatedWidget() {
double fingerOffset = 0.0;
return GestureDetector(
onHorizontalDragUpdate: (details) {
setState((){
fingerOffset += details.delta.dx;
});
},
onHorizontalDragEnd: (details) {
/// some code to add inertia
},
child: Transform.rotate(
angle: offset,
child: Container(width: 100, height: 100, color: Colors.blue),
));
}