use InteractiveViewer instead of GestureDetector

This commit is contained in:
open-trade 2020-11-18 17:36:11 +08:00
parent df58f3230e
commit 33186e28d1

View File

@ -118,20 +118,18 @@ class _RemotePageState extends State<RemotePage> {
// https://stackoverflow.com/questions/46640116/make-flutter-application-fullscreen // https://stackoverflow.com/questions/46640116/make-flutter-application-fullscreen
SystemChrome.setEnabledSystemUIOverlays([]); SystemChrome.setEnabledSystemUIOverlays([]);
return FlutterEasyLoading( return FlutterEasyLoading(
child: GestureDetector( child: InteractiveViewer(
constrained: false,
panEnabled: true,
onInteractionUpdate: (details) {
print("$details");
},
child: Container( child: Container(
child: CustomPaint( child: CustomPaint(
painter: new ImageEditor(image: _image), painter: new ImageEditor(image: _image),
), ),
color: MyTheme.grayBg), color: MyTheme.grayBg),
onPanStart: (DragDownDetails) { ));
print('onPanStart $DragDownDetails');
// hero.moveTo(DragDownDetails.globalPosition.dx, DragDownDetails.globalPosition.dy);
},
onPanUpdate: (DragDownDetails) {
print('onPanUpdate $DragDownDetails');
// hero.moveTo(DragDownDetails.globalPosition.dx, DragDownDetails.globalPosition.dy);
}));
} }
} }
@ -145,7 +143,7 @@ class ImageEditor extends CustomPainter {
@override @override
void paint(Canvas canvas, Size size) { void paint(Canvas canvas, Size size) {
if (image == null) return; if (image == null) return;
canvas.drawImage(image, new Offset(0.0, 0.0), new Paint()); canvas.drawImage(image, new Offset(0, 0), new Paint());
} }
@override @override