【发布时间】:2022-01-12 17:47:10
【问题描述】:
我想在Flutter中做一个互动大厅平面图,但是不知道如何正确实现。
要点:
- 计划应在不损失质量的情况下扩展。
- 单击时该地点的视图应略有变化
第一种选择:是做成一个大尺寸的Canvas,放到InteractiveViewer中,但是不知道能不能在tap上改变已经绘制好的部分?
第二个选项: 是将每个地方制作成带有 onTap 事件的 SVG,并将其全部放入 Stack 小部件中。然后再次在 InteractiveViewer 中。但是计划上大概有500个座位,不知道手机能不能处理这样的场景缩放?
也许还有其他解决方案?非常感谢您的建议,我对 Flutter 的经验仍然很少。
【问题讨论】:
-
为什么需要
interactiveViewer?你想要双指缩放功能吗? -
是的,我需要捏缩放...但我认为 InteractiveViewer 是唯一一种我可以实现它的方法...
-
所以使用
InteractiveViewer作为父母,CustomMultiChildLayout作为孩子 -
我没听说过。谢谢,将阅读文档
-
请阅读。为什么不使用具有绝对定位子小部件的 Stack 小部件?就像 CSS 中的
<div id="parent" style ="position: relative"> <div id="seat1" style="postion: absolute; top: Xpx; left: Ypx "><img>/div> <div id="seatN" style="postion: absolute; top: Xpx; left: Ypx "><img>/div> </div>一样
标签: flutter svg canvas stack interactive