我正在尝试实施以下设计。设计应在所有屏幕尺寸和方向上都受支持。我不确定如何绘制突出显示的部分,该部分将在所有屏幕中进行调整。
我尝试了以下操作:
Row
创建mainAxisAlignment: MainAxisAlignment.Center
。Row
在三部分中划分Container
。Container
具有Flexible
占用所有可用空间。使用borderRadius
获得圆形的边界。Container
的transform
属性将两个容器平移到边框的终点以下。但是,由于以下原因,上述想法不起作用:
阅读论坛和博客后,我认为CustomPainter
或ClipPath
应该是不错的选择。非常感谢您的帮助。预先感谢。
我认为CustomPainter
是最好的方法。这篇文章可以帮助您实现目标:https://stackoverflow.com/a/55862786/4800774
要获取起点和终点,可以使用渲染框获取全局位置。
GlobalKey nyPointKey = GlobalKey();
Point(key: nyPointKey);
RenderBox box = key.currentContext.findRenderObject();
Offset position = box.localToGlobal(Offset.zero);