【问题标题】:How to make a dragable widget scalable?如何使可拖动的小部件可缩放?
【发布时间】:2023-01-16 14:37:03
【问题描述】:

在 Flutter 中,如何使一个小部件同时可滚动和可拖动?

出于某种原因,GestureDetector 的行为有点奇怪。例如:

return GestureDetector(
  onHorizontalDragUpdate: onHorizontalScroll,
  onScaleUpdate: onScale,
  behavior: HitTestBehavior.opaque,
  child: CustomPaint(
    painter: SomeCustomPainter( /* some parameters */ ),
  ),
);

上面的 GestureDetector 位于 SingleChildScrollView 的深处。 问题是onHorizontalScroll 大部分时间触发onScale 应该触发。 在这种情况下(大约 10 次中有 9 次)小部件不会缩放。 可靠地使小部件可缩放的唯一方法是删除onHorizontalDargUpate,但之后就不能再拖动它了……

那么现在的问题是,如何让一个 widget 既可拖动又可缩放?非常感谢任何建议。谢谢你。

【问题讨论】:

    标签: flutter gesturedetector


    【解决方案1】:

    我建议使用 Draggable 小部件和 DragTaregt 将其放入。它比从头开始创建 draggable 更有用且更好。 check this link

    【讨论】:

      猜你喜欢
      • 2022-12-09
      • 2011-06-26
      • 2019-10-18
      • 1970-01-01
      • 2011-02-25
      • 1970-01-01
      • 2016-09-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多