android - Flutter 将一个圆圈掩入容器中
解决方案
最简单的方法是使用重叠和剪辑。
class OverlapSquare extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Container(
height: 200,
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(10),
color: Colors.red,
),
child: ClipRect(
clipBehavior: Clip.hardEdge,
child: OverflowBox(
maxHeight: 250,
maxWidth: 250,
child: Center(
child: Container(
decoration: BoxDecoration(
color: Colors.white,
shape: BoxShape.circle,
),
),
),
),
),
);
}
}
OverFlowBox 允许圆在其父对象的边界之外绘制,然后 cliprect 将其切回边缘。
仅供参考 - 在我的设备上,我在白色圆圈的顶部和底部得到一条小红线。我相当确定这是最近在颤振中引入的错误,因为如果我在容器周围放置一个白色边框,我也会看到类似的东西。为此,我在 github 上提出了一个问题。
推荐阅读
- auth0 - oidc-client-js 针对 Auth0 的 signoutRedirect 不返回结束会话端点
- flutter - Flutter StreamBuilder 与 FutureBuilder
- c++ - 当我的 c++ 控制台程序被未知进程关闭时,如何选择?
- vba - 在 PowerPoint 2016 中调整图像大小的 VBA 代码
- lisp - 如何测试动态范围是否已在 lisp 中正确实现?
- php - 插件开发 - 在 single-{CPT}.php 中使用类
- javascript - 有没有办法自定义 w2ui 网格中的列标题以在每列的顶部有一个搜索框?
- c# - 如何在 C# 中将依赖注入与工作单元和存储库一起使用?(不是基于网络的应用程序)
- angularjs - 角度文件上传范围越来越不确定
- python - 通过匹配另一个数据框的多对一关系来创建新列的数据框