Flutter:ClipRRect 与带有 BoxDecoration 的容器

问题描述 投票:0回答:3

我知道 ClipRRect 有其他选项,例如自定义剪辑器。但如果我只需要一个简单的边界半径,性能上有什么区别吗?比较推荐哪一款?

flutter dart
3个回答
5
投票

如果您的目标是创建圆形边框,则必须仅在最后一种情况下使用剪刀,此时容器可能无济于事。例如,图像可以在圆形边框上绘制,因此除非剪切图像,否则您没有其他选择。


2
投票

形状怎么样,形状 vs 剪辑

RaisedButton(
  onPressed: () {},
  child: Text('Test'),
  shape: RoundedRectangleBorder(
    side: BorderSide.none,
    borderRadius: BorderRadius.all(Radius.circular(50))
  ),
)

0
投票

裁剪是昂贵的操作。要创建带圆角的矩形,请考虑使用许多小部件类提供的 borderRadius 属性,而不是应用剪切矩形。

看看父小部件。也许其中之一已经让您能够控制装饰、边框或形状。如果不是 - DecoratedBox 可能是最轻量级的解决方案。

以下是一些有关性能的其他提示,您可能会觉得有用。

https://docs.flutter.dev/perf/best-practices#minimize-use-of-opacity-and-clipping

© www.soinside.com 2019 - 2024. All rights reserved.