首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CGContextDrawLinearGradient还是cagradientlayer?

CGContextDrawLinearGradient还是cagradientlayer?
EN

Stack Overflow用户
提问于 2012-05-19 09:31:07
回答 1查看 950关注 0票数 2

在UIView的drawRect方法中调用的CGContextDrawLinearGradient和CAGradientLayer有什么区别?他们是如何比较性能的呢?创建渐变视图的最佳实践是什么?我真的想要一个很好的解释,说明它们是如何相互关联的,以及为什么一个比另一个的性能更好。

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-05-24 23:07:09

如果你只是想要一个带有渐变效果的长方体,那么性能并不是问题。对于您的特定需求,您应该采用最简单的实现方式。

添加CAGradientLayer意味着您不必创建视图子类,只需将层添加到现有视图中即可。设置也稍微简单一些,因为您不需要担心帧大小或任何c风格的核心图形函数。您也可以添加圆角,阴影等不需要太多的努力。

然而,如果你想要多个渐变视图,一个子类可能是一个好主意,所以你可以只实例化新的。

所以,不幸的是,你的问题没有一个明确的答案。两者都不是绝对更好的。如果您关心的是性能,请同时实现两者并使用工具进行测试。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10661594

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档