【发布时间】:2012-08-06 23:40:51
【问题描述】:
据我所知,我们可以使用CGContextSetShadowWithColor 等核心图形来绘制阴影。但是,我们也可以使用 CALayer 来显示阴影。
问题:
它们之间有什么区别。有什么规则可以确定我们什么时候使用核心图形来绘制a还是什么时候使用CALayer来完成这项工作
【问题讨论】:
标签: ios core-graphics calayer
据我所知,我们可以使用CGContextSetShadowWithColor 等核心图形来绘制阴影。但是,我们也可以使用 CALayer 来显示阴影。
问题:
它们之间有什么区别。有什么规则可以确定我们什么时候使用核心图形来绘制a还是什么时候使用CALayer来完成这项工作
【问题讨论】:
标签: ios core-graphics calayer
我不得不说,使用CoreAnimation 总是优于CoreGraphics,因为它更高级别,并且抽象了绘制阴影的低级别细节。 (它还可以让苹果优化阴影绘制而不损害你的代码语法)。
但是,有时您会覆盖drawRect:,并且您对阴影有非常特定的用途,而不是整个视图的图层。您可能想在这里使用CoreGraphics 阴影。
最后一点,CoreAnimation 渐变在渲染时要快得多,相信我的话。我在UITableViewCell 上使用它,与使用CoreGraphics Gradients 相比,滚动性能显着提高。 That comes at a price, though. It's a bit worse-looking.
【讨论】: