首页 > 解决方案 > 如何裁剪小部件

问题描述

我有一个尺寸固定的孩子。但是,我希望能够动态裁剪小部件(比如将其水平裁剪 50%,也就是只显示左半部分)。在没有外部库的情况下,有没有一种简单的方法可以做到这一点?

我只能想到使用隐藏溢出的堆栈......

标签: flutter

解决方案


我们可以使用ClipRect

使用矩形剪辑其子项的小部件。默认情况下,ClipRect 会阻止其子级在其边界之外进行绘制,但可以使用自定义剪辑器自定义剪辑矩形的大小和位置。

以下示例将 aImage水平裁剪一半:

ClipRect(
  child: Align(
    alignment: Alignment.topCenter,
    widthFactor: 0.5,
    child: Image.network(userAvatarUrl),
  ),
)

推荐阅读