我正在尝试通过矩阵手势检测器仅用一根手指点击并从窗口小部件的某些点拖动来缩放窗口小部件,用两根手指可以正常工作,但我需要用一根手指来完成它。 ?我的代码是:
class MyTransformWidget extends StatefulWidget {
final Widget transformWidget;
MyTransformWidget({this.transformWidget});
@override
_MyTransformWidgetState createState() => _MyTransformWidgetState();
}
class _MyTransformWidgetState extends State<MyTransformWidget> {
@override
Widget build(BuildContext context) {
final ValueNotifier<Matrix4> notifier = ValueNotifier(Matrix4.identity());
return MatrixGestureDetector(
onmatrixUpdate: (m,tm,sm,rm) {
notifier.value = m;
},child: AnimatedBuilder(
animation: notifier,child: widget.transformWidget,builder: (ctx,child) {
return Transform(transform: notifier.value,child: child);
},),shouldRotate: false,shouldScale: true,shouldTranslate: false,);
}
}