1
据我所知,我们可以使用核心图形(如CGContextSetShadowWithColor
)绘制阴影。但是,我们也可以使用CALayer来显示阴影。使用核心图形绘制阴影并使用CALayer
问:
什么是他们的2之间的差异。有没有什么规则来确定,当我们使用核心图形绘制或当我们使用的CALayer做的工作
据我所知,我们可以使用核心图形(如CGContextSetShadowWithColor
)绘制阴影。但是,我们也可以使用CALayer来显示阴影。使用核心图形绘制阴影并使用CALayer
问:
什么是他们的2之间的差异。有没有什么规则来确定,当我们使用核心图形绘制或当我们使用的CALayer做的工作
我不得不说,使用CoreAnimation
总是优于CoreGraphics
,因为它更高电平,抽象绘制阴影的低级细节。 (它也可能允许苹果优化阴影绘制而不损害你的代码语法)。
但是,有些时候你总是重写drawRect:
,而且你对阴影有非常具体的用途,而不是整个视图的图层。你可能想在这里使用CoreGraphics
阴影。
最后一个注释,CoreAnimation
渲染时,渐变速度要快很多,请记住它。我在UITableViewCell
上使用它,滚动性能显着增加,而不是使用CoreGraphics
渐变。 That comes at a price, though. It's a bit worse-looking.