使用核心图形和使用CALayer绘制阴影

时间:2012-08-09 17:17:41

标签: ios core-graphics calayer

据我所知,我们可以使用CGContextSetShadowWithColor这样的核心图形来绘制阴影。但是,我们也可以使用CALayer来显示阴影。

问题:

其中2个有什么不同。是否有任何规则来确定我们何时使用核心图形来绘制或当我们使用CALayer来完成工作时

1 个答案:

答案 0 :(得分:1)

我不得不说使用CoreAnimation始终优先于CoreGraphics,因为它更高级别,并抽象绘制阴影的低级细节。 (它也可能允许苹果优化阴影绘图而不会损害您的代码语法)。

但是,有时你会覆盖drawRect:,而且你对阴影有特定的用途,而不是整个视图的层。你可能想在这里使用CoreGraphics阴影。

最后一点,CoreAnimation渐变在渲染时要快得多,请接受我的话。我在UITableViewCell上使用它,滚动性能显着提高,而不是使用CoreGraphics渐变。 That comes at a price, though. It's a bit worse-looking.